Device for detecting multi-turn absolute rotation angle and method for detecting the same

ABSTRACT

There is provided a method for calculating with high accuracy a multi-turn absolute rotation angle of a motor rotating shaft coupled to a motor output shaft. In a rotation angle detection device according to this invention, a rotation angle θ n  of an n-th rotating shaft satisfies the relationship with a rotation angle θ 1  of the motor rotating shaft: θ n =(−(m±1)/m) n−1 ×θ 1 . The rotation angle detection device as an embodiment of a mechanism satisfying the relationship includes a gear mechanism in which a gear having (m±1) teeth meshes with a gear having m teeth between each adjacent two of first to n-th rotating shafts. A multi-turn rotation angle of the first rotating shaft is expanded to a detected value p 1  of the first rotating shaft which is a rotation angle of the first rotating shaft and R 0 ×m 0 +R 1 ×m 1 + . . . R n−2 ×m n−2  corresponding to the number of revolutions of the first rotating shaft, coefficients R 0  to R n−2  are obtained on the basis of detected values from angle detectors of the respective shafts, and the multi-turn rotation angle of the first rotating shaft is calculated. Detection errors generated in the angle detectors of the second and subsequent rotating shafts can be effectively reduced, and a high-accuracy multi-turn rotation angle can be calculated.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a national stage application under 35 U.S.C. 371 of and claims priority to International Patent Application No. PCT/JP2012/050160, filed Jan. 6, 2012, which claims priority to Japanese Patent Application Nos. 2011-002454 and 2011-106368 filed on Jan. 7, 2011 and May 11, 2011, respectively. International Patent Application No. PCT/JP2012/050160 and Japanese Patent Application Nos. 2011-002454 and 2011-106368 are incorporated herein by reference.

FIELD OF THE INVENTION

The present invention relates to a device for detecting a rotation angle of a rotating shaft and, more particularly, to a rotation angle detection device which can detect an absolute rotation angle of a rotating shaft over multiple turns without battery-based backup or the like.

DESCRIPTION OF THE BACKGROUND

A rotation angle detection device, for example, detects a rotation angle of a rotating shaft of a motor and controls the position of a movable body of a machine tool or the like which is driven by the motor according to a detected value of the rotation angle. In order to control the position of the movable body with high accuracy over a wide range, the rotation angle detection device is desirably capable of detecting the motor rotating shaft as an absolute rotation angle over multiple turns.

As such a rotation angle detection device, Japanese Patent Laid-Open No. 2010-44055 (corresponding to U.S. patent application Ser. No. 12/168,151) discloses an inductive multi-turn encoder. The inductive multi-turn encoder 10 includes geared circular disks 41 to 46 connected in series and in multiple stages and realizes detection of a multi-turn angle by detection of rotation angles of the disks 42, 44, and 46. A range of a multi-turn angle which can be detected by the inductive multi-turn encoder disclosed in the prior art literature is determined by a reduction ratio of the disk 46 in the final stage to an input rotatable shaft. A rotatable shaft 20 as the input rotatable shaft is mechanically connected to the circular disk 4I with a gear reduction ratio of I:4. The subsequent geared circular disks 4I″ and 42, 42″ and 43, 43″ and 44, 44″ and 45, and 45″ and 46 are mechanically connected with respective gear reduction ratios of 1:4. By making such 1:4 gear reductions in six stages, the multi-turn encoder 10 can obtain a multi-turn detection range up to 4096 revolutions.

Patent References

Patent Reference 1: Japanese Patent Laid-Open No. 2010-44055

Patent Reference 2: Japanese Patent Laid-Open No. 2002-107178

Patent Reference 3: Japanese Patent No. 3967963

Patent Reference 4: Japanese Patent Publication No. 05-38243

Non-Patent Reference

Non Patent Literature 1: Yasukazu Hayashi and four others, “Development of High Resolution and Compact Absolute Rotary Encoder with Batteryless Multi-turn Detecting Function,” Journal of the Japan Society of Precision Engineering, 2000, Vol. 66, No. 8, pp. 1177-1180

The above-described inductive multi-turn encoder obtains a multi-turn rotation angle directly from a rotation angle of a circular disk at reduced speed. In order to set a multi-turn detection range to be wide, a reduction ratio needs to be increased. As a result, such an inductive multi-turn encoder suffers from the problems of increase in mechanistic complexity and size and rise in cost.

In order to remedy the problems, the encoder introduced in “Development of High Resolution and Compact Absolute Rotary Encoder with Batteryless Multi-turn Detecting Function” (Journal of the Japan Society of Precision Engineering, 2000, Vol. 66, No. 8, pp. 1177-1180) and the resolver disclosed in Japanese Patent Laid-Open No. 2002-107178 each include respective angle detectors for detecting rotation angles of rotating shafts connected in parallel to a rotating input shaft with different change ratios and detect a multi-turn absolute position on the basis of pieces of rotation angle information obtained from the angle detectors.

In a method which obtains multi-turn information from the relationship among rotation angles of a plurality of shafts connected in parallel with different change ratios, however, a detection range of a multi-turn angle is generally determined by the least common multiple of periodic signals obtained by processing angle detected signals of the shafts. A method for detecting a multi-turn absolute rotation angle as described in the prior art literatures needs to select a change ratio equal to the ratio between numbers relatively prime to each other to set a multi-turn angle detection range to be wide, which results in the problem of increase in the number of gear types. Also, the flexibility in designing a multi-turn angle detection range is restricted due to the limited number of numbers relatively prime to one another. Additionally, various multi-turn angle detection ranges fit other applications, and it is inconvenient that the upper end of a practicable multi-turn angle detection range is limited to a special value, such as the least common multiple of values relatively prime to one another. Moreover, since the above-described method suffers from the problem of the complexity of computation at the time of obtaining a multi-turn absolute position from pieces of rotation angle information of the shafts.

In order to cope with the problem of the complexity of the computation for obtaining a multi-turn absolute position, Japanese Patent Laid-Open No. 2002-107178 discloses an absolute position detection method which stores a table (FIG. 9) showing the relationship between values obtained from rotation angles of respective rotating shafts and the number of revolutions of a main rotating shaft in advance in a memory and selects, from the table, the number of revolutions of the main rotating shaft corresponding to values obtained from rotation angles of the rotating shafts. However, in order to set a multi-turn detection range to be wide, large memory corresponding to the multi-turn detection range (0 to 20357) is consumed, which is problematic.

Japanese Patent No. 3967963 discloses a computation method which saves memory by storing computation results for only one of two periods in a memory. However, this method has the same problem with memory usage as the problem of the above-described detection method.

As for a computation method for obtaining a multi-turn absolute rotation angle, Japanese Patent Publication No. 05-38243 creates a relational expression of detected values from a plurality of angle detectors with respect to a shaft rotation angle and searches for a multi-turn absolute rotation angle by using a program which determines a shaft rotation angle simultaneously satisfying detected values of the shafts by sequential substitution. If a multi-turn detection range is wide, the number of combinations among which search is made increases, which causes the problem of time-consuming calculation.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a configuration block diagram of a transmission mechanism of a rotation angle detection device for explaining the principle of obtaining a multi-turn absolute rotation angle according to a first embodiment of the present invention.

FIG. 2 is a configuration view of a rotation angle detection device for detecting a multi-turn absolute rotation angle that is the first embodiment of the present invention.

FIG. 3 is a block diagram of a rotation angle detection device for calculating a multi-turn absolute rotation angle of a motor rotating shaft in the first embodiment of the present invention.

FIG. 4 is a graph showing the relationships between the number of revolutions of a first rotating shaft and first to fourth rotation angles in the first embodiment of the present invention.

FIG. 5 is a graph showing the relationships between the number of revolutions of the first rotating shaft and detected values p₁, p₂, p₃, and p₄ of respective shafts in the first embodiment of the present invention.

FIG. 6 is a graph showing the relationships of periodic signals with the number of revolutions of the first rotating shaft in the first embodiment of the present invention.

FIG. 7 is a graph showing the relationship between a rotation angle of a first rotating shaft and rotation angles of respective shafts in a second embodiment of the present invention.

FIG. 8 shows angle detected values output from angle detectors of the respective shafts with respect to the rotation angle of the first rotating shaft in the second embodiment of the present invention.

FIG. 9 is a graph showing the relationships of periodic signals with the rotation angle of the first rotating shaft in the second embodiment of the present invention.

FIG. 10 is a graph showing the relationships between the rotation angle of the first rotating shaft and coefficients R₀ to R₂ in the second embodiment of the present invention.

FIG. 11 is a graph for explaining the configuration of an integer part of a rotation angle calculated value of the first rotating shaft in the second embodiment of the present invention.

FIG. 12 is a flow chart showing the procedure for calculation processing of the rotation angle calculated value of the first rotating shaft in the second embodiment of the present invention.

FIG. 13 is a flow chart showing the procedure for calculation processing of a rotation angle calculated value of a first rotating shaft in a third embodiment of the present invention.

FIG. 14 is a configuration block diagram of a transmission mechanism of a rotation angle detection device for explaining the principle of obtaining a multi-turn absolute rotation angle according to a fourth embodiment of the present invention.

FIG. 15 is a block diagram of the rotation angle detection device for calculating a multi-turn absolute rotation angle of a motor rotating shaft in the fourth embodiment of the present invention.

FIG. 16 is a graph showing the relationships between the number of revolutions of a first rotating shaft and first to third rotation angles in the fourth embodiment of the present invention.

FIG. 17 is a graph showing the relationships between the number of revolutions of the first rotating shaft and detected values p₁, p₂, and p₃ of respective shafts in the fourth embodiment of the present invention.

FIG. 18 is a graph showing the relationships of periodic signals with the number of revolutions of the first rotating shaft in the fourth embodiment of the present invention.

FIG. 19 is a configuration block diagram of a transmission mechanism of a rotation angle detection device according to a fifth embodiment of the present invention.

DESCRIPTION

Some embodiments include a multi-turn absolute rotation angle detection device including a transmission mechanism adapted to transmit revolution from a first rotating shaft of first to nmax-th rotating shafts down to the nmax-th rotating shaft, in which a rotation angle θ_(n) of the n-th rotating shaft satisfies the relationship with a rotation angle θ₁ of the first rotating shaft:

$\begin{matrix} {\theta_{n} = {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1}}} & \left\lbrack {{Expression}\mspace{14mu} 1} \right\rbrack \end{matrix}$ and an angle detector adapted to detect respective rotation angles of the first rotating shaft to the n-th rotating shaft. In the above, nmax and m are integers not less than 3, and n falls within the range 1≦n≦nmax.

Further embodiments include letting p₁, p₂, . . . , P_(nmax) be angle detected values of the first rotating shaft to the n-th rotating shaft which are detected by the angle detector and u be an angle detected quantity for one cycle of the rotating shafts, a rotation angle calculated value θ_(c) of the first rotating shaft is calculated by θ_(c)=mod((k₁×p₁+k₂×p₂+ . . . k_(n)×p_(nmax)),u)×m^(nmax−1). In the above, mod(x,a) is a modulo operation which obtains a remainder left over when x is divided by a and that coefficients k₁, . . . , k_(nmax) are each zero, a positive integer, or a negative integer.

In these or other embodiments, the coefficients k₁, . . . , k_(nmax) correspond to a coefficient of a (n−1)-th degree term in x when the expression (x+1)^(nmax) is expanded.

In some embodiments, the transmission mechanism that transmits revolution from the first rotating shaft down to the n-th rotating shaft is formed to have with a change ratio of (m±1)/m between each adjacent two of the rotating shafts.

In some embodiments, a transmission mechanism is a gear mechanism formed such that gears fixed to rotating shafts from a first rotating shaft to an n-th rotating shaft continuously mesh with each other, the gear mechanism including a plurality of pairs of gears, each pair of gears being meshed together such that a ratio of change in rotational speed is (m±1)/m between two continuous ones of the rotating shafts.

In some embodiments, an angle detected value p_(n) within one revolution of an n-th rotating shaft is detected by an angle detector attached to respective rotating shafts, a coefficient R_(n−2) is determined on the basis of the detected angle detected value p_(n), and a rotation angle calculated value θ₁(m^(n−1))′ is obtained by substituting the determined coefficient R_(n−2) into a rotation angle calculation formula below. The rotation angle calculated value θ₁(m^(n−1))′ represents a multi-turn rotation angle of a first rotating shaft, and a rotation angle detection range is 0 to m^(n−1) revolutions.

$\begin{matrix} {\theta_{1{(m^{n - 1})}}^{\prime} = {p_{1} + {\sum\limits_{i = 2}^{n}{\left( {R_{i - 2} \times m^{i - 2}} \right) \times u}}}} & \left\lbrack {{Expression}\mspace{14mu} 2} \right\rbrack \end{matrix}$ Values of a coefficient R₀ to a coefficient R_(nmax−2) are sequentially determined by repeating, for a numerical value n=2 to nmax, computation of the above rotation angle calculation formula, and a multi-turn absolute rotation angle calculated value θc=θ₁(m^(nmax−1))′ is obtained. In the above, the coefficients R₀ to R_(nmax−2) are integers ranging from 0 to m−1 inclusive, u is a base unit quantity, and a rotation angle calculated value θ₁(m⁰)′ is an angle detected value p₁ of the first rotating shaft.

In some embodiments, the coefficient R_(n−2) is determined such that, if the number of rotating shafts is n, a result of calculating the rotation angle calculation formula that obtains the rotation angle calculated value θ₁ (m^(n−1))′ of the first rotating shaft approximates a rotation angle calculated value θ₁ (m^(n−1)) below of the first rotating shaft. The rotation angle calculated value θ₁ (m^(n−1)) is obtained by multiplying, by m^(n−1), a periodic signal S(m^(n−1)) which is obtained from angle detected values p₁ to p_(n) of the first to n-th rotating shafts by a formula below. A rotation angle detection range of the rotation angle calculated value θ₁ (m^(n−1)) is 0 to m^(n−1) revolutions. S _(m) _(n−1) ₎=mod((k ₁ ×p ₁ +k ₂ ×p ₂ ′+k ₃ ×p ₃ ′+ . . . +k _(n) ×p _(n))×J ^(n−1) ,u)  [Expression 3] In the above, k₁, k₂, . . . k_(n) are coefficients of a (n−1)-th degree term in x in the expansion k₁×x⁰+k₂×x¹+k₃×x² . . . k_(n)x^(n−1) of (x+1)^(n−1), mod(x,a) is a modulo operation which obtains a remainder left over when x is divided by a, and J is a sign-adjusting term which is 1 if a change ratio between each adjacent two of the rotating shafts is −(m−1)/m and is −1 when the change ratio is −(m+1)/m. An angle corrected value p_(n)′ can be calculated by substituting the calculated rotation angle calculated value θ₁ (m^(n−1))′ into a following angle corrected value calculation formula:

$\begin{matrix} {p_{n}^{\prime} = {{mod}\left( {{\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 1})}}^{\prime}},u} \right)}} & \left\lbrack {{Expression}\mspace{14mu} 4} \right\rbrack \end{matrix}$

In some embodiments, the coefficient R_(n−2) is obtained by determining an integer which most closely approximates a result of calculating:

$\begin{matrix} \frac{\theta_{1{(m^{n - 1})}} - \theta_{1{(m^{n - 2})}}^{\prime}}{m^{n - 2} \times u} & \left\lbrack {{Expression}\mspace{14mu} 5} \right\rbrack \end{matrix}$

In some embodiments, the coefficient R_(n−2) can be obtained by computing:

$\begin{matrix} {R_{n - 2} = {{INT}\left( {{mod}\left( {{\frac{S_{(m^{n - 1})} \times m}{u} - \frac{\theta_{1{(m^{n - 2})}}^{\prime}}{m^{n - 2} \times u} + 0.5},m} \right)} \right)}} & \left\lbrack {{Expression}\mspace{14mu} 6} \right\rbrack \end{matrix}$ INT(x) is an operation which drops a fractional part of a numerical value x.

In some embodiments, the above coefficient R_(n−2) is determined such that an angle corrected value p_(n)′ given by a formula below most closely approximates an angle detected value p_(n) of an n-th rotating shaft, and a rotation angle calculated value θ₁(m^(n−1))′ is obtained.

$\begin{matrix} {p_{n}^{\prime} = {{mod}\left( {{\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \left( {p_{1} + {\sum\limits_{i = 2}^{n}{\left( {R_{i - 2} \times m^{i - 2}} \right) \times u}}} \right)},u} \right)}} & \left\lbrack {{Expression}\mspace{14mu} 7} \right\rbrack \end{matrix}$ Values of a coefficient R₀ to a coefficient R_(nmax−2) are sequentially determined by repeating, for a numerical value n=2 to nmax, computation of the above angle corrected value calculation formula.

In some embodiments, the determined coefficients R₀ to R_(nmax−2) are substituted into a following rotation angle calculation formula:

$\begin{matrix} {\theta_{1{(m^{{n\;\max} - 1})}}^{\prime} = {p_{1} + {\sum\limits_{i = 2}^{n\;\max}{\left( {R_{i - 2} \times m^{i - 2}} \right) \times u}}}} & \left\lbrack {{Expression}\mspace{14mu} 8} \right\rbrack \end{matrix}$ to obtain a multi-turn absolute rotation angle calculated value θ₁(m^(nmax−1))′ of a first rotating shaft. In the above, the coefficients R₀ to R_(nmax−2) are integers ranging from 0 to m−1 inclusive, u is a base unit quantity, and an angle corrected value p₁′ is an angle detected value p₁ of the first rotating shaft.

In some embodiments, the above coefficient R_(n−2) can be obtained by determining an integer which most closely approximates a result of calculating:

$\begin{matrix} {{mod}\left( {{{\mp \left( {p_{n} - {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 2})}}^{\prime}}} \right)} \times \frac{m}{u}},m} \right)} & \left\lbrack {{Expression}\mspace{14mu} 9} \right\rbrack \end{matrix}$

In some embodiments, the coefficient R_(n−2) can be obtained by computing:

$\begin{matrix} {R_{n - 2} = {{INT}\left( {{mod}\left( {{{{\pm \left( {p_{n} - {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 2})}}^{\prime}}} \right)} \times \frac{m}{u}} + 0.5},m} \right)} \right)}} & \left\lbrack {{Expression}\mspace{14mu} 10} \right\rbrack \end{matrix}$ INT(x) is an operation which drops a fractional part of a numerical value x.

In some embodiments, the above-described transmission mechanism is provided for each of a plurality of systems, periodic signals and angle corrected values are obtained from the systems, and a multi-turn absolute rotation angle is computed. In particular, m is set such that periods of the periodic signals are relatively prime to each other.

In some embodiments, a transmission mechanism is formed with a single change ratio between each adjacent two of rotating shafts (e.g., two types of gears, ones having m teeth and ones having m±1 teeth, are formed). Component sharing is thus easy. If components are to be integrally formed, a transmission mechanism can be designed using one type of component.

In some embodiments, the upper end of a multi-turn detection range is not limited to the least common multiple of a plurality of values, and the detection range can be arbitrarily designed. For example, the present invention can easily achieve a multi-turn detection range up to m^(n−1)/N. Accordingly, a multi-turn detection range up to 2^(n) or 10^(n) or a multi-turn detection range suited to a different application can be easily designed.

Since a multi-turn absolute position can be obtained only by a product-sum operation of detected values, calculation processing can be easily performed at high speed. The present invention is also advantageous in that the present invention need not store detected values of rotating shafts and computation results in a table and saves memory.

In some embodiments, even if errors are included in detected values from angle detectors, the detection errors generated in the angle detectors can be reduced, and a high-accuracy multi-turn rotation angle calculated value can be calculated. In particular, in the calculation, detection errors generated in angle detectors attached to second and subsequent rotating shafts can be eliminated, and a total error can be kept within a detection error generated in a first rotating shaft. As a result, even if a multi-turn rotation angle detection range is expanded by increasing the number of rotating shafts, an error in a calculated multi-turn rotation angle calculated value can be kept within a detection error in the first rotating shaft.

Accuracy required for an angle detector according to the present invention only needs to be enough to determine a coefficient R^(n−2). Since the accuracy may be lower than a case where a multi-turn angle is obtained by directly calculating detected values of shafts, the cost of a multi-turn angle detection device can be reduced.

Since a multi-turn angle detection device which uses the present invention does not require speed change with a ratio of relatively prime numbers, the number of types of gears used is small. Additionally, a multi-turn rotation angle detection range can be freely designed. Moreover, memory reference is unnecessary for multi-turn period calculation, which prevents consumption of much memory that causes rise in the cost of memory components and increase in size.

Embodiments of the present invention will be described below with reference to the drawings. The drawings and descriptions corresponding to the drawings are mere illustrations for embodying the present invention, and it is not intended that the claimed inventions are limited to the embodiments. The present invention is interpreted only on the basis of the terms as defined in the claims, and the terms are interpreted according to their common interpretations.

The principle of obtaining a multi-turn absolute rotation angle according to a first embodiment of the present invention will be described with reference to FIG. 1. In a configuration block diagram shown in FIG. 1 of a transmission mechanism 10 of a rotation angle detection device, a first rotating shaft 11 which is coupled to a motor output shaft is connected to an angle detector S1, which detects an angle detected value p₁ indicating an angle within one revolution that corresponds to a rotation angle θ₁ covering a multi-turn angle of the first rotating shaft 11. Similarly, angle detectors S2 to Sn detect respective angle detected values P₂ to p₁, indicating angles within one revolution that correspond to rotation angles θ₂ to θ_(n) covering a multi-turn angle of second to n-th rotating shafts 12 to 15. Gears having m−1 (or m+1) teeth and gears having m teeth are fixed to the first to n-th rotating shafts 11 to 15, and a gear 11 a of the first rotating shaft 11 is meshed with a gear 12 b of the second rotating shaft 12. A gear 12 a which is fixed to the second rotating shaft 12 is meshed with a gear 13 b of the third rotating shaft 13. In this manner, the transmission mechanism 10 forms a gear mechanism in which a gear having m−1 (or m+1) teeth meshes with a gear having m teeth between adjacent rotating shafts.

Various embodiments are described using a gear mechanism as a transmission mechanism. A transmission mechanism according to the present invention, however, is not limited to gears, and examples of the transmission mechanism include all elements that can transmit rotational force of a rotating shaft. In the gear mechanism arranged in the above-described manner, a multi-turn absolute rotation angle of the first rotating shaft 11 is calculated by computing the calculation formulae below using the angle detected values p₁ to p_(n) of the first to n-th rotating shafts 11 to 15 detected by the angle detectors S1 to Sn.

Assume a case where gears having m−1 teeth are meshed with corresponding gears having m teeth at the first to n-th rotating shafts 11 to 15 in FIG. 1. In this case, a change gear ratio is represented by (m−1)/m. In the gear mechanism with the first to n-th rotating shafts 11 to 15 arranged in series in this order, each pair of gears meshed together has the identical change gear ratio of (m−1)/m. Accordingly, letting θ₁ be the rotation angle of the first rotating shaft 11, the rotation angle θ_(n) of the n-th rotating shaft 15 is represented by Formula (1).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 11} \right\rbrack & \; \\ \begin{matrix} {\theta_{n} = {\left( {- \frac{m - 1}{m}} \right)^{n - 1} \times \theta_{1}}} \\ {= {\left( {{- 1} + \frac{1}{m}} \right)^{n - 1} \times \theta_{1}}} \end{matrix} & (1) \end{matrix}$ Note that, as for a minus sign before the part (m−1)/m in Formula (1), a rotation direction of the first rotating shaft 11 is expressed as a plus (positive) while a rotation direction reverse to the direction of revolution of the first rotating shaft 11 is expressed as a minus (negative).

Assuming that the transmission mechanism shown in FIG. 1 is a gear mechanism which is formed from the first rotating shaft to the fourth rotating shaft and letting θ₁ be the rotation angle of the first rotating shaft coupled to the motor output shaft, the rotation angle θ₂ of the second rotating shaft, the rotation angle θ₃ of the third rotating shaft, and the rotation angle θ₄ of the fourth rotating shaft are obtained from Formula (1) in the respective manners below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 12} \right\rbrack & \; \\ {\theta_{1} = {{\left( {{- 1} + \frac{1}{m}} \right)^{0} \times \theta_{1}} = {1 \times \theta_{1}}}} & (2) \\ \left\lbrack {{Expression}\mspace{14mu} 13} \right\rbrack & \; \\ {\theta_{2} = {{\left( {{- 1} + \frac{1}{m}} \right)^{1} \times \theta_{1}} = {\left( {{- 1} + \frac{1}{m}} \right) \times \theta_{1}}}} & (3) \\ \left\lbrack {{Expression}\mspace{14mu} 14} \right\rbrack & \; \\ {\theta_{3} = {{\left( {{- 1} + \frac{1}{m}} \right)^{2} \times \theta_{1}} = {\left( {1 - \frac{2}{m} + \frac{1}{m^{2}}} \right) \times \theta_{1}}}} & (4) \\ \left\lbrack {{Expression}\mspace{14mu} 15} \right\rbrack & \; \\ {\theta_{4} = {{\left( {{- 1} + \frac{1}{m}} \right)^{3} \times \theta_{1}} = {\left( {{- 1} + \frac{3}{m} - \frac{3}{m^{2}} + \frac{1}{m^{3}}} \right) \times \theta_{1}}}} & (5) \end{matrix}$

The angle detectors S1 to Sn are detectors which detect the rotation angles (e.g., detected values representing 0(°) to 360(°) of the first to n-th rotating shafts 11 to 15. If the n-th rotating shaft revolves by θ_(n), the angle detected value p_(n) of the angle detector Sn can be expressed by Formula (6). [Expression 16] p _(n)=mod(θ_(n) ,u)  (6) The formula y=mod(x,a) is generally defined as a modulo operation which calculates a remainder y left over when x is divided by a. That is, if the rotation angle of a given one of the rotating shafts is measured in degrees (°), u that is a numerical value (base unit quantity) representing a rotation angle for one cycle is 360(°), the detected value p_(n) exhibits a value of 0 to 360(°) according to the rotation angle. For example, if the rotation angle θ_(n) is 90(°) or 510(°), the detected value p_(n) is 90(°) or 150(°). Note that if a rotation angle θ is −1 (°), a detected value p is not treated as −1 (°) but as 359(°). Any unit can be adopted as long as the rotation angle θ_(n) and u are expressed in the unit. For example, if the unit quantity is 1 (revolution), the detected value p_(n) exhibits a value of 0 to 1 according to the rotation angle.

The detected values from the angle detectors will be further described. The angle detectors S1 to Sn that detect the rotation angles of the first to n-th rotating shafts 11 to 15 each output a detected value for one cycle when the corresponding rotating shaft revolves once. For example, letting u be a unit quantity for one cycle, the angle detectors S1 to Sn each output a detected signal of sawtooth form whose detected value monotonically increases from 0 to u according to the rotation angle of the rotating shaft and returns to 0 when the rotating shaft revolves once. The unit of the unit quantity u is a numerical value representing a rotation angle per one cycle. As described above, any unit may be used as long as the unit is the same as the unit of a rotation angle.

If the rotation angles θ₁ to θ₄ represented by Formulae (2) to (5) are substituted into Formula (6), the angle detected values p₁ to p₄ from the angle detectors S1 to S4 are calculated from the rotation angle θ₁ of the first rotating shaft by Formulae (7) to (10).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 17} \right\rbrack & \; \\ {p_{1} = {{mod}\left( {\theta_{1},u} \right)}} & (7) \\ \left\lbrack {{Expression}\mspace{14mu} 18} \right\rbrack & \; \\ {p_{2} = {{mod}\left( {{\left( {{- 1} + \frac{1}{m}} \right) \times \theta_{1}},u} \right)}} & (8) \\ \left\lbrack {{Expression}\mspace{14mu} 19} \right\rbrack & \; \\ {p_{3} = {{mod}\left( {{\left( {1 - \frac{2}{m} + \frac{1}{m^{2}}} \right) \times \theta_{1}},u} \right)}} & (9) \\ \left\lbrack {{Expression}\mspace{14mu} 20} \right\rbrack & \; \\ {p_{4} = {{mod}\left( {{\left( {{- 1} + \frac{3}{m} - \frac{3}{m^{2}} + \frac{1}{m^{3}}} \right) \times \theta_{1}},u} \right)}} & (10) \end{matrix}$

Assuming a periodic signal whose one cycle corresponds to m revolutions of the first rotating shaft, a modulo formula representing the periodic signal, S(m¹), can be expressed as:

$\begin{matrix} {S_{(m^{1})} = {{mod}\left( {{\frac{1}{m} \times \theta_{1}},u} \right)}} & \left\lbrack {{Expression}\mspace{14mu} 21} \right\rbrack \end{matrix}$ From the relationship mod(a+b,u)=mod(mod(a,u)+mod(b,u),u), the modulo formula representing the periodic signal S(m¹) can be deformed in the manner as in Formula (11) by using the angle detected value p₁ of the first rotating shaft and the angle detected value p₂ of the second rotating shaft.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 22} \right\rbrack & \; \\ \begin{matrix} {S_{(m^{1})} = {{mod}\left( {{\frac{1}{m} \times \theta_{1}},u} \right)}} \\ {= {{mod}\left( {{{{mod}\left( {\theta_{1},u} \right)} + {{mod}\left( {{\left( {{- 1} + \frac{1}{m}} \right) \times \theta_{1}},u} \right)}},u} \right)}} \\ {= {{mod}\left( {{p_{1} + p_{2}},u} \right)}} \end{matrix} & (11) \end{matrix}$

Assuming a periodic signal whose one cycle corresponds to m² revolutions of the first rotating shaft, a modulo formula representing the periodic signal, S(m²), can be expressed as:

$\begin{matrix} {S_{(m^{2})} = {{mod}\left( {{\frac{1}{m^{2}} \times \theta_{1}},u} \right)}} & \left\lbrack {{Expression}\mspace{14mu} 23} \right\rbrack \end{matrix}$ The modulo formula representing the periodic signal S(m²) can be deformed in the manner as in Formula (12) by using the angle detected values p₁, p₂, and p₃ of the first to third rotating shafts.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 24} \right\rbrack & \; \\ \begin{matrix} {S_{(m^{2})} = {{mod}\left( {{\frac{1}{m^{2}} \times \theta_{1}},u} \right)}} \\ {= {{mod}\left( {{{mod}\left( {\theta_{1},u} \right)} + {2 \times {{mod}\left( {{\left( {{- 1} + \frac{1}{m}} \right) \times \theta_{1}},u} \right)}} +} \right.}} \\ \left. {{{mod}\left( {{\left( {1 - \frac{2}{m} + \frac{1}{m^{2}}} \right) \times \theta_{1}},u} \right)},u} \right) \\ {= {{mod}\left( {{p_{1} + {2\; p_{2}} + p_{3}},u} \right)}} \end{matrix} & (12) \end{matrix}$

Assuming a periodic signal whose one cycle corresponds to m³ revolutions of the first rotating shaft, a modulo formula representing the periodic signal, S(m³), can be expressed as:

$\begin{matrix} {S_{(m^{3})} = {{mod}\left( {{\frac{1}{m^{3}} \times \theta_{1}},u} \right)}} & \left\lbrack {{Expression}\mspace{14mu} 25} \right\rbrack \end{matrix}$ The modulo formula representing the periodic signal S(m³) can be deformed in the manner as in Formula (13) by using the angle detected values p₁, p₂, p₃, and p₄ of the first to fourth rotating shafts.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 26} \right\rbrack & \; \\ \begin{matrix} {S_{(m^{3})} = {{mod}\left( {{\frac{1}{m^{3}} \times \theta_{1}},u} \right)}} \\ {= {{mod}\left( {{{mod}\left( {\theta_{1},u} \right)} + {3 \times {{mod}\left( {{\left( {{- 1} + \frac{1}{m}} \right) \times \theta_{1}},u} \right)}} +} \right.}} \\ {{3 \times {{mod}\left( {{\left( {1 - \frac{2}{m} + \frac{1}{m^{2}}} \right) \times \theta_{1}},u} \right)}} +} \\ \left. {{{mod}\left( {{\left( {{- 1} + \frac{3}{m} - \frac{3}{m^{2}} + \frac{1}{m^{3}}} \right) \times \theta_{1}},u} \right)},u} \right) \\ {= {{mod}\left( {{p_{1} + {3\; p_{2}} + {3\; p_{3}} + p_{4}},u} \right)}} \end{matrix} & (13) \end{matrix}$

Assuming a periodic signal whose one cycle corresponds to m^(n−1) revolutions of the first rotating shaft, a modulo formula representing the periodic signal can be generally expressed as:

$\begin{matrix} {{mod}\left( {{\frac{1}{m^{n - 1}} \times \theta_{1}},u} \right)} & \left\lbrack {{Expression}\mspace{14mu} 27} \right\rbrack \end{matrix}$ By deduction from Formulae (11) to (13), the periodic signal, S(m^(n−1)), can be represented as a periodic signal calculation formula in Formula (14). In Formula (14), n is the number of rotating shafts.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 28} \right\rbrack & \; \\ \begin{matrix} {S_{(m^{n - 1})} = {{mod}\left( {{\left( \frac{1}{m} \right)^{n - 1} \times \theta_{1}},u} \right)}} \\ {= {{mod}\left( {\left( {{k_{1} \times p_{1}} + {k_{2} \times p_{2}} + \ldots + {k_{n} \times p_{n}}} \right),u} \right)}} \end{matrix} & (14) \end{matrix}$ where k₁, k₂, . . . , k_(n) correspond to coefficients of the expansion of (x+1)^(n−1). That is, (x+1)^(n−1) is expanded to k₁×x⁰+k₂×x¹+ . . . +k_(n)×x^(n−1) according to the binomial theorem.

Accordingly, a multi-turn absolute rotation angle calculated value θ₁(m^(n−1)) of the first rotating shaft is calculated by multiplying the periodic signal in Formula (14) by m^(n−1) and is represented as Formula (15). [Expression 29] θ_(1(m) _(n−1) ₎=mod((k ₁ ×p ₁ +k ₂ ×p ₂ + . . . +k _(n) ×p _(n)),u)×m ^(n−1)  (15) As shown in Formula (15), the multi-turn rotation angle calculated value q1(m ^(n−1)) of the first rotating shaft can be obtained by substituting the detected values p₁ to p_(n) from the angle detectors of the respective rotating shafts. In Formula (15), n is the number of shafts to be taken into consideration. If the number n of shafts is set to nmax, a multi-turn absolute rotation angle calculated value θc=θ₁(m^(nmax−1)) is calculated.

Note that although the above-described calculations are targeted at a gear mechanism with a change gear ratio of (m−1)/m, the present invention can also be applied to a gear mechanism with a change gear ratio of (m+1)/m. It is possible to distinguish between a case with a change gear ratio of (m−1)/m and a case with a change gear ratio of (m+1)/m by introducing a sign-adjusting term to the above-described periodic functions in the manner (to be described below).

Periodic functions for a gear mechanism with a change gear ratio of (m+1)/m are obtained in the above-described manner. The obtained periodic functions are as shown below. That is, the angle detected value p_(n) of the n-th rotating shaft is represented as follows.

$\begin{matrix} {p_{n} = {{mod}\left( {{\left( {- \frac{m + 1}{m}} \right)^{n - 1} \times \theta_{1}},u} \right)}} & \left\lbrack {{Expression}\mspace{14mu} 30} \right\rbrack \end{matrix}$ Accordingly, the angle detected values p₁ to p₄ of the first to fourth rotating shafts are obtained in the manner below.

$\begin{matrix} {{p_{1} = {{mod}\left( {\theta_{1},u} \right)}}{p_{2} = {{mod}\left( {{\left( {{- 1} - \frac{1}{m}} \right) \times \theta_{1}},u} \right)}}{p_{3} = {{mod}\left( {{\left( {1 + \frac{2}{m} + \frac{1}{m^{2}}} \right) \times \theta_{1}},u} \right)}}{p_{4} = {{mod}\left( {{\left( {{- 1} - \frac{3}{m} - \frac{3}{m^{2}} - \frac{1}{m^{3}}} \right) \times \theta_{1}},u} \right)}}} & \left\lbrack {{Expression}\mspace{14mu} 31} \right\rbrack \end{matrix}$

The periodic functions S(m¹) to S(m³) are obtained as follows.

$\begin{matrix} \begin{matrix} {S_{(m^{1})} = {{mod}\left( {{\frac{1}{m} \times \theta_{1}},u} \right)}} \\ {= {{mod}\left( {{{mod}\left( {\theta_{1},u} \right)} + {{{mod}\left( {{\left( {{- 1} - \frac{1}{m}} \right) \times \theta_{1}},u} \right)} \times}} \right.}} \\ \left. {\left( {- 1} \right),u} \right) \\ {= {{mod}\left( {{p_{1} + {p_{2} \times \left( {- 1} \right)}},u} \right)}} \end{matrix} & \left\lbrack {{Expression}\mspace{14mu} 32} \right\rbrack \end{matrix}$ Since a computation result of p₁+p₂ is −(1/m) in the above formula, p₁+p₂ is multiplied by −1.

$\begin{matrix} \begin{matrix} {S_{(m^{2})} = {{mod}\left( {{\frac{1}{m^{2}} \times \theta_{1}},u} \right)}} \\ {= {{mod}\left( {{{mod}\left( {\theta_{1},u} \right)} + {2 \times {{mod}\left( {{\left( {{- 1} - \frac{1}{m}} \right) \times \theta_{1}},u} \right)}} +} \right.}} \\ \left. {{{mod}\left( {{\left( {1 + \frac{2}{m} + \frac{1}{m^{2}}} \right) \times \theta_{1}},u} \right)},u} \right) \\ {= {{mod}\left( {{p_{1} + {2\; p_{2}} + p_{3}},u} \right)}} \end{matrix} & \left\lbrack {{Expression}\mspace{14mu} 33} \right\rbrack \\ \begin{matrix} {S_{(m^{3})} = {{mod}\left( {{\frac{1}{m^{3}} \times \theta_{1}},u} \right)}} \\ {= {{mod}\left( {{{mod}\left( {\theta_{1},u} \right)} + {3 \times {{mod}\left( {{\left( {{- 1} - \frac{1}{m}} \right) \times \theta_{1}},u} \right)}} +} \right.}} \\ {{3 \times {{mod}\left( {{\left( {1 + \frac{2}{m} + \frac{1}{m^{2}}} \right) \times \theta_{1}},u} \right)}} +} \\ {{{mod}\left( {{\left( {{- 1} - \frac{3}{m} - \frac{3}{m^{2}} - \frac{1}{m^{3}}} \right) \times \theta_{1}},u} \right)} \times} \\ \left. {\left( {- 1} \right),u} \right) \\ {= {{mod}\left( {{\left( {p_{1} + {3\; p_{2}} + {3\; p_{3}} + p_{4}} \right) \times \left( {- 1} \right)},u} \right)}} \end{matrix} & \left\lbrack {{Expression}\mspace{14mu} 34} \right\rbrack \end{matrix}$

Since a computation result of p₁+3p₂+3p₃+p₄ is −(1/m³) in the above formula, p₁+3p₂+3p₃+p₄ is multiplied by −1. As described above, if the change gear ratio is (m+1)/m, when n is an even number, a result of a computation in a modulo formula is negative, and a sign-adjusting term J^(n−1) (J=−1) is introduced into a periodic function. That is, the periodic function S(m^(n−1)) represented as in the formula below. S _((m) _(n−1) ₎=mod((k ₁ ×p ₁ +k ₂ ×p ₂ + . . . +k _(n) ×p _(n))×J ^(n−1) ,u)  [Expression 35] In the above formula, J is 1 if the change ratio between adjacent rotating shafts is −(m−1)/m and is −1 if the change ratio is −(m+1)/m.

For example, assuming here a case where the number of rotating shafts is 4, the number m of teeth is 32 (the number of teeth in a driving rotating shaft is m−1 while the number of teeth in a driven rotating shaft is m), and the unit quantity u is 131072 (u corresponds to a resolution of 17 bits (=2¹⁷) of the angle detected value p₁ from the angle detector S1) in the gear mechanism shown in FIG. 1, Formula (14) is given by:

$\begin{matrix} {{{mod}\left( {{\frac{1}{32^{3}} \times \theta_{1}},131072} \right)} = {{mod}\left( {{p_{1} + {3\; p_{2}} + {3\; p_{3}} + p_{4}},131072} \right)}} & \left\lbrack {{Expression}\mspace{14mu} 36} \right\rbrack \end{matrix}$ A rotation angle calculated value θ₁(m³) of the first rotating shaft is obtained by Formula (16). [Expression 37] θ_(1(m) ₃ ₎=mod((p ₁+3p ₂+3p ₃ +p ₄),131072)×32768  (16)

Accordingly, by detecting the rotation detected values p₁ to p₄ representing the rotation angles of the first to fourth rotating shafts, multi-turn angle detection of the first rotating shaft whose one cycle corresponds to 32768 (=32) revolutions can be performed with a resolution of 131072 on the basis of Formula (15) above.

Embodiments which detect a multi-turn absolute rotation angle will be described below in detail on the basis of the above-described principle.

Embodiment 1

FIG. 2 is a configuration view of a rotation angle detection device 20 for detecting a multi-turn absolute rotation angle which is the first embodiment of the present invention. To a first rotating shaft 23 which is provided on the opposite side from an output rotating shaft (not shown) of a servomotor 21, an optical absolute encoder 22 is coupled, and a gear 23 a having 31 teeth is fixed. The gear 23 a is meshed with a gear 24 b which is fixed to a second rotating shaft 24 and has 32 teeth. A gear 24 a which is fixed to the second rotating shaft 24 and has 31 teeth is meshed with a gear 25 b which is fixed to a third rotating shaft 25 and has 32 teeth. A gear 25 a which is fixed to the third rotating shaft 25 and has 31 teeth is meshed with a gear 26 b which is fixed to a fourth rotating shaft 26 and has 32 teeth. The gears 24 a and 24 b, the gears 25 a and 25 b, and the gears 26 a and 26 b are each integrally formed resin gears of the same shape and may be formed integrally with the corresponding rotating shaft. As described above, the rotation angle detection device 20 has a structure in which revolution of the servomotor 21 is transmitted from the first rotating shaft 23 to the fourth rotating shaft 26 via a series-connected gear mechanism.

The optical absolute encoder 22 detects an absolute angle θ₁ within one revolution of the first rotating shaft 23 with a resolution of 17 bits (2¹⁷=131072 p/rev). The optical absolute encoder 22 is electrically connected to a signal processing circuit 28 which is mounted on a printed board 27, and an angle detected value p₁ which is a piece of rotation angle information of the first rotating shaft 23 detected by the optical absolute encoder 22 is sent to the signal processing circuit 28.

Magnets 29 a, 29 b, and 29 c which are magnetized to have two poles in the same directions as radial directions of the gears 24 a, 25 a, and 26 a are attached to shaft ends, respectively of the second to fourth rotating shafts 24, 25, and 26 and revolve with shaft revolution. MR rotation angle sensors 30 a, 30 b, and 30 c using MR elements are mounted at positions facing the magnets 29 a, 29 b, and 29 c on the board 27. The MR sensor 30 a, 30 b, or 30 c outputs two sinusoidal voltages which are 90° out of phase with each other for one cycle when the magnet 29 a, 29 b, or 29 c revolves once. The detected voltages detected by the MR sensors 30 a, 30 b, and 30 c are sent to the signal processing circuit 28.

A resin structure 32 which is formed using a spacer 31 holds the above-described second to fourth rotating shafts 24 to 26. Although the first to fourth rotating shafts 23 to 26 shown in FIG. 2 are held in a linear arrangement in the structure 32, for the sake of simplicity of description, center axes of the first to fourth rotating shafts 23 to 26 may be arranged on a curved line for effective utilization of the space in the structure 32.

FIG. 3 shows a block diagram of a rotation angle detection device 30 for calculating a multi-turn absolute rotation angle θc of the servomotor 21. In FIG. 3, elements same as or similar to the elements shown in FIG. 2 are denoted by same reference numerals.

Referring to FIG. 3, a detected value p₁ representing a rotation angle for one cycle of the first rotating shaft 23 that is a rotating shaft of the servomotor 21 is detected by the encoder 22 and is sent to a communication port 34 inside the signal processing circuit 28 via a signal line 33. The detected value p₁ output from the encoder 22 has a resolution of 17 bits. The detected value p₁ received by the communication port 34 is further sent to a multi-turn computing circuit 35 for calculating an absolute angle of the first rotating shaft 23.

Revolution of the first rotating shaft 23 is transmitted to the second to fourth rotating shafts 24 to 26 by the gear mechanism. As regards rotation angles θ₁ to θ₄ of the first to fourth rotating shafts 23 to 26, for example, if m is 32, and a rotation angle is represented as the number of revolutions, the relationships between the number of revolutions of the first rotating shaft and the first to fourth rotation angles θ₁ to θ₄ are as shown in FIG. 4. The abscissa in FIG. 4 represents the number of revolutions of the first rotating shaft while the ordinate represents the rotation angles θ₁ to θ₄ of the respective shafts. Each minus sign on the ordinate indicates that a shaft rotation direction is reverse to that of the first rotating shaft. For example, if the number of revolutions of the first rotating shaft is 32, θ₂ is −31 in the second rotating shaft. This shows that the second rotating shaft revolves 31 times in a direction reverse to that of the first rotating shaft. The relationships are as shown in Formulae (2) to (5).

Referring back to FIG. 3, the rotation angles of the first to fourth rotating shafts 23 to 26 are detected by the MR element angle detectors 30 a, 30 b, and 30 c, respectively, and two sinusoidal detected voltages (a sin component and a cosin component) 90° out of phase with each other are sent to an AD converter 37 via each of signal lines 33 a, 33 b, and 33 c. The two detected voltages are converted from analog values to, for example, 12-bit digital values by the AD converter 37 and are sent to an RD conversion computing circuit 38. The RD conversion computing circuit 38 calculates an angle from the two received digital values (the sin component and eosin component). Although the angle has a resolution of 12 bits, angle detected values p₂, p₃, and p₄ which have been extended to 17 bits to suit the resolution of the angle detected value p₁ from the encoder 22 are obtained. More specifically, a 17-bit angle detected value is obtained by appending 5 bits of 0 to the low-order end of 12 bits. Note that since detected voltages from the MR element angle detectors 30 a, 30 b, and 30 c include errors due to variation among MR elements themselves and various factors such as magnetism, circuits, and machine accuracy, the detected voltages are not converted to angles without any change but are subjected to voltage signal offset correction and amplitude correction and various types of accuracy correction, such as error correction of an actual rotation angle and correction related to the detected values of the respective rotating shafts. The angle detected values p₂, p₃, and p₄ subjected to the processes are sent to the multi-turn computing circuit 35. FIG. 5 shows change in each of the angle detected values p₁ to p₄ obtained in the above-describe manner with change in the number of revolutions of the first rotating shaft. Note that since the angle detected values p₁, p₂, p₃, and p₄ received by the multi-turn computing circuit 35 each have a resolution of 17 bits, the detected value of each shaft changes between 0 and 131072 during each revolution of the shaft, as indicated by the ordinate in FIG. 5.

The multi-turn computing circuit 35 receives the angle detected values p₁, p₂, p₃, and p₄ from the communication port 34 and RD conversion computing circuit 38 and substitutes the values into Formula (15). With this operation, the multi-turn computing circuit 35 can calculate and output the multi-turn absolute rotation angle θc when m is 32, the resolution is 17 bits (2¹⁷=131072), and a multi-turn range is 15 bits (2¹⁵=32768).

FIG. 6 is a graph representing periodic signals obtained by Formulae (11) to (13). The abscissa represents the number of revolutions, which ranges from 0 to 32768, of the first rotating shaft 23 and is partially omitted for the sake of simplicity. The bottom line in FIG. 6 corresponds to Formula (11) and represents a periodic signal whose one cycle corresponds to 32 revolutions. The bottom line shows that an absolute rotation angle when the number of revolutions of the first rotating shaft 23 ranges from 0 to 32 can be detected from the periodic signal that is obtained by substituting the angle detected values p₁ and p₁ of the first and second rotating shafts 23 and 24 into Formula (11). The middle line in FIG. 6 corresponds to Formula (12) and represents a periodic signal whose one cycle corresponds to 1024 revolutions. The middle line shows that an absolute rotation angle when the number of revolutions of the first rotating shaft 23 ranges from 0 to 1024 can be detected from the periodic signal that is obtained by substituting the angle detected values p₁, p₂, and p₃ of the first to third rotating shafts 23 to 25 into Formula (12). The top line in FIG. 6 corresponds to Formula (13) and represents a periodic signal whose one cycle corresponds to 32768 revolutions. The top line shows that an absolute rotation angle when the number of revolutions of the first rotating shaft 23 ranges from 0 to 32768 can be detected from the periodic signal that is obtained by substituting the angle detected values p₁, p₂, p₃, and p₄ of the first to fourth rotating shafts 23 to 26 into Formula (13).

Embodiment 2

The above-described multi-turn absolute rotation angle detection devices can achieve a wide multi-turn detection range by increasing the number of rotating shafts. However, high accuracy is required for individual angle detectors which measure detected values of rotating shafts to calculate an accurate multi-turn rotation angle calculated value, as will be described below. Generally, detected values measured by angle detectors include errors. What level of errors is tolerable for each angle detector to keep constant the accuracy of a multi-turn rotation angle calculated value of a first rotating shaft will be considered below. For example, a rotation angle calculated value θ₁(m^(n−1)) of a first rotating shaft of a multi-turn absolute rotation angle detection device with n shafts is calculated by multiplying a periodic signal S(m¹) represented by Formula (11) by a rotation angle detection range m¹ when the number n of rotating shafts is 2, calculated by multiplying a periodic signal S(m²) represented by Formula (12) by a rotation angle detection range m² when the number n is 3, and calculated by multiplying a periodic signal S(m³) represented by Formula (13) by a rotation angle detection range m³ when the number n is 4, as shown in Formula (15). The calculated values are represented by Formulae (17) to (19).

If the number of shafts is 2, [Expression 38] θ_(1(m) ₁ ₎=mod(p ₁ +p ₂,1)×m ¹  (17)

if the number of shafts is 3, [Expression 39] θ_(1(m) ₂ ₎=mod(p ₁+2p ₂ +p ₃),1)×m ²  (18)

If the number of shafts is 4, [Expression 40] θ_(1(m) ₃ ₎mod(p ₁+3p ₂+3p ₃ +p ₄),1)×m ³   (19) In Formulae (17) to (19), m is the number of teeth of the first rotating shaft. A unit quantity u in Formulae (11) to (13) is set to 1. That is, each frequency function takes a value ranging from 0 to 1 according to a rotation angle of the first rotating shaft.

Let e_(n) be an absolute value of a detection error in each rotating shaft. In order for the accuracy of the rotation angle calculated value θ₁(m^(n−1)) of the first rotating shaft to be kept not more than one revolution (±0.5 rev), the absolute value e_(n) needs to satisfy Formulae (20) to (22) below.

If the number of shafts is 2,

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 41} \right\rbrack & \; \\ {{e_{1} + e_{2}} < \frac{1}{2\; m^{1}}} & (20) \end{matrix}$

If the number of shafts is 3,

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 42} \right\rbrack & \; \\ {{e_{1} + {2\; e_{2}} + e_{3}} < \frac{1}{2\; m^{2}}} & (21) \end{matrix}$

If the number of shafts is 4,

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 43} \right\rbrack & \; \\ {{e_{1} + {3\; e_{2}} + {3\; e_{3}} + e_{4}} < \frac{1}{2\; m^{3}}} & (22) \end{matrix}$

Assuming that the detection errors in the rotating shafts are substantially equal and are e, the detection errors need to fall within one of the ranges below.

If the number of shafts is 2,

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 44} \right\rbrack & \; \\ {e < \frac{1}{4\; m^{1}}} & (23) \end{matrix}$

If the number of shafts is 3,

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 45} \right\rbrack & \; \\ {e < \frac{1}{8\; m^{2}}} & (24) \end{matrix}$

If the number of shafts is 4,

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 46} \right\rbrack & \; \\ {e < \frac{1}{16\; m^{3}}} & (25) \end{matrix}$

By deduction of an error range when the number of shafts is n from Formulae (23) to (25), the error range is represented as in Formula (26) below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 47} \right\rbrack & \; \\ {e < \frac{1}{2^{n}m^{n - 1}}} & (26) \end{matrix}$ As can be understood from Formula (26), although increase in the number n of shafts widens a multi-turn detection range, the increase also exponentially increases detection accuracy required for an angle detector of each rotating shaft. Requiring each angle detector to have desired high detection accuracy causes rise in the cost of a multi-turn detection device. There is thus a need for computation processing for obtaining a multi-turn rotation angle which reduces the effect of detection errors in angle detectors while lowering detection accuracy required for the angle detectors of respective rotating shafts.

A calculation method for obtaining a multi-turn angle calculated value which reduces the effect of detection errors in angle detectors, will be described below using a transmission mechanism 10 shown in FIG. 1. Generally, an integer I can be expanded to a sequence of powers of m, m_(n). More specifically, letting k be an integer ranging from 0 to n and a_(i) be an integer within the range 0≦a_(k)<n, the integer I can be expressed as I=a₀m⁰+a₁m¹+a₂m²+ . . . +a_(i)m^(i)+ . . . +a_(n)m^(n). For example, if m is 10, the integer 1056 can be expanded to 6×10⁰+5×10¹+0×10²+1×10³. The expression is called a decimal number. In the following description, a part corresponding to the number of revolutions of a multi-turn absolute rotation angle uses expanded base-m notation.

Referring to FIG. 1, a multi-turn absolute rotation angle of a first rotating shaft 11 can be mathematically expressed using the sum of an angle detected value p₁ within one revolution of the first rotating shaft 11 and the number of multi-turn revolutions of the first rotating shaft 11. If the number of multi-turn revolutions is represented in base-m notation (the reason for which will be explained later), a multi-turn rotation angle calculated value θ₁(m^(n−1))′ (also denoted by θc) of the first rotating shaft can be expressed by a rotation angle calculation formula in Formula (27) below.

$\begin{matrix} {\mspace{79mu}\left\lbrack {{Expression}\mspace{14mu} 48} \right\rbrack} & \; \\ \begin{matrix} {\theta_{1{(m^{n - 1})}}^{\prime} = {p_{1} + {\left( {{R_{0} \times m^{0}} + {R_{1} \times m^{1}} + {R_{2} \times m^{2}} + \ldots + {R_{n - 2} \times m^{m - 2}}} \right) \times u}}} \\ {= {p_{1} + {\sum\limits_{i = 2}^{n}\;{\left( {R_{i - 2} \times m^{i - 2}} \right) \times u}}}} \end{matrix} & (27) \end{matrix}$ where m corresponds to the number of teeth of the first rotating shaft, n is the number of shafts, coefficients R₀ to R_(n−2) are integers ranging from 0 to m−1 inclusive (0≦R₀ to R_(n−2)<m), and u is a base unit quantity. In the structure of the transmission mechanism 10 shown in FIG. 1, since a multi-turn detection range increases m-fold for every one rotating shaft increase, it is convenient to express a part corresponding to the number of multi-turn revolutions in Formula (27) in base-m notation.

A multi-turn rotation angle calculated value θ₁(m^(n−1)) of the first rotating shaft 11 is obtained by substituting detected values p₁ to p_(n) detected for respective rotating shafts into Formula (15). In essence, the rotation angle calculated value θ₁(m^(n−1)) and the rotation angle calculated value θ₁(m^(n−1))′ can be made substantially equal by appropriately selecting the coefficients R₀ to R_(n−2). That is, if the coefficients R₀ to R_(n−2) are appropriately selected such that a part corresponding to the number of multi-turn revolutions of the rotation angle calculated value θ₁(m^(n−1))′ is equal to a part corresponding to the number of revolutions of the rotation angle calculated value θ₁(m^(n−1)), a rotation angle calculated value error included in the rotation angle calculated value θ₁(m^(n−1))′ can be limited to a detection error resulting from the detected value p₁ of the first rotating shaft. A method for calculating the coefficients R₀ to R_(n−2) will be described below in order to obtain the rotation angle calculated value θ₁(m^(n−1))′ from the detected values p₁ to p_(n) detected by detectors of the respective rotating shafts.

For the sake of simplicity of description, assume that the number nmax of rotating shafts is 4, the number m of teeth of the first rotating shaft is 4, and the base unit quantity u is 1 in the transmission mechanism 10 shown in FIG. 1. In this case, the rotation angle calculated value θ₁(m^(n−1))′ of the first rotating shaft can be expressed on the basis of Formula (27) as in Formula (28) below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 49} \right\rbrack & \; \\ \begin{matrix} {\theta_{1{(4^{4 - 1})}}^{\prime} = {p_{1} + {R_{0} \times 4^{0}} + {R_{1} \times 4^{1}} + {R_{2} \times 4^{2}}}} \\ {= {p_{1} + {R_{0} \times 1} + {R_{1} \times 4} + {R_{2} \times 16}}} \end{matrix} & (28) \end{matrix}$ A method for calculating the coefficients R₀ to R₂ under the above-described conditions will be described.

As can be seen from the relationship shown in Formula (1), a rotation angle θ₁ of the first rotating shaft has relationships shown in Formulae (29) to (31) below with rotation angles θ₂, θ₃, and θ₄, respectively, of second, third, and fourth rotating shafts.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 50} \right\rbrack & \; \\ {\theta_{2} = {{- \frac{3}{4}} \times \theta_{1}}} & (29) \\ {\theta_{3} = {\frac{9}{16} \times \theta_{1}}} & (30) \\ {\theta_{4} = {{- \frac{27}{64}} \times \theta_{1}}} & (31) \end{matrix}$ Accordingly, the rotation angles θ₂, θ₃, and θ₄ of the second, third, and fourth rotating shafts with respect to the rotation angle θ₁ of the first rotating shaft are shown in FIG. 7.

The detected value p_(n) indicates a detected value within one revolution in an n-th rotating shaft (since the base unit quantity u is 1 in this example, the value ranges from 0 to 1). Although a rotation angle θ_(n) and the detected value p_(n) of the n-th rotating shaft are strictly as shown in Formula (6), p_(n) is actually substantially equal to mod(θ_(n),u) due to an error included in a corresponding angle detector. Accordingly, as for the detected values p₁, p₂, p₃, and p₄ of the respective rotating shafts, if Formulae (29) to (31) above are substituted into the rotation angles θ₂, θ₃, and θ₄ of the respective rotating shafts, the relationships of the rotation angle θ₁ of the first rotating shaft with the detected values p₁, p₂, p₃, and p₄ of the respective rotating shafts are as shown in Formulae (32) to (35) below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 54} \right\rbrack & \; \\ {p_{1} \approx {{mod}\left( {\theta_{1},1} \right)}} & (32) \\ {{p_{2} \approx {{mod}\left( {\theta_{2},1} \right)}} = {{mod}\left( {{{- \frac{3}{4}} \times \theta_{1}},1} \right)}} & (33) \\ {{p_{3} \approx {{mod}\left( {\theta_{3},1} \right)}} = {{mod}\left( {{\frac{9}{16} \times \theta_{1}},1} \right)}} & (34) \\ {{p_{4} \approx {{mod}\left( {\theta_{4},1} \right)}} = {{mod}\left( {{{- \frac{27}{64}} \times \theta_{1}},1} \right)}} & (35) \end{matrix}$ Accordingly, the detected values p₁, p₂, p₃, and p₄ of the respective rotating shafts with respect to the rotation angle θ₁ of the first rotating shaft are shown in FIG. 8.

If an error is not included in the angle detected value p_(n), a periodic signal S(m^(n−1)) has a relationship shown in Formula (14). If the periodic signal S(m^(n−1)) is obtained using the angle detected value p_(n) including an error, such errors affect computation, which leads to error enlargement. Since the rotation angle calculated value θ₁(m^(n−1))′ obtained by Formula (27) does not include an error in the terms other than the angle detected value p₁ of the first rotating shaft, an angle corrected value p_(n)′ which is calculated by an angle corrected value calculation formula in Formula (36) below and does not include an error is used to calculate the periodic signal S(m^(n−1)), instead of the angle detected value p_(n) including an error.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 52} \right\rbrack & \; \\ {p_{n}^{\prime} = {{mod}\left( {{\left( {- \frac{m + 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 1})}}},u} \right)}} & (36) \end{matrix}$

The relationship between angle corrected values of the respective rotating shafts and the periodic signal is represented as in Formula (37) below. [Expression 53] S _((m) _(n−1) ₎=mod((k ₁ ×p ₁ +k ₂ ×p ₂ ′+k ₃ ×p ₃ ′ . . . k _(n−1) ×p _(n−1) ′+k _(n) ×p _(n))×J ^(n−1) ,u)  (37) where angle corrected values p₂′ to p_(n−1)′ are corrected values for the angle detected values p₂ to p_(n−1), and J is a sign-adjusting term which is 1 if the change ratio between adjacent rotating shafts is −(m−1)/m and is −1 if the change ratio is −(m+1)/m.

When periodic signals S(m¹), S(m²), and S(m³) whose one cycles correspond to 4 (=m¹), 16 (=m²), and 64 (=m³) revolutions of the first rotating shaft are obtained from Formulae (11) to (13) with the angle corrected value p_(n)′ in mind, the periodic signals are expressed as in Formulae (38) to (41) below. Note that a periodic signal S(m⁰) of the first rotating shaft is the angle detected value p₁ itself. Since the relationship mod(a,c)+mod(b,c)=mod((a+b),c) and the relationship b×mod(a,c)=mod(a×b,c) hold in modulo calculation, the periodic signals S(m¹) to S(m³) are deformed in the manners as in Formulae (38) to (41) below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 54} \right\rbrack & \; \\ \begin{matrix} {S_{(m^{0})} = p_{1}} \\ {\approx {{mod}\left( {\theta_{1},1} \right)}} \end{matrix} & (38) \\ \begin{matrix} {S_{(m^{1})} = {{mod}\left( {{p_{1} + p_{2}},1} \right)}} \\ {\approx {{mod}\left( {{{{mod}\left( {\theta_{1},1} \right)} + {{mod}\left( {{{- \frac{3}{4}} \times \theta_{1}},1} \right)}},1} \right)}} \\ {\approx {{mod}\left( {{\frac{1}{4} \times \theta_{1}},1} \right)}} \end{matrix} & (39) \\ \begin{matrix} {S_{(m^{2})} = {{mod}\left( {{p_{1} + {2\; p_{2}^{\prime}} + p_{3}},1} \right)}} \\ {\approx {{mod}\left( {{{mod}\left( {\theta_{1},1} \right)} + {2 \times {{mod}\left( {{{- \frac{3}{4}} \times \theta_{1}},1} \right)}} +} \right.}} \\ \left. {{{mod}\left( {{\frac{9}{16} \times \theta_{1}},1} \right)},1} \right) \\ {\approx {{mod}\left( {{\frac{1}{16} \times \theta_{1}},1} \right)}} \end{matrix} & (40) \\ \begin{matrix} {S_{(m^{3})} = {{mod}\left( {{p_{1} + {3\; p_{2}^{\prime}} + {3\; p_{3}^{\prime}} + p_{4}},1} \right)}} \\ {\approx {{mod}\left( {{{mod}\left( {\theta_{1},1} \right)} + {3 \times {{mod}\left( {{{- \frac{3}{4}} \times \theta_{1}},1} \right)}} + {3 \times}} \right.}} \\ \left. {{\left. {{{mod}\left( {{\frac{9}{16} \times \theta_{1}},1} \right)},1} \right) + {{mod}\left( {{{- \frac{27}{64}} \times \theta_{1}},1} \right)}},1} \right) \\ {\approx {{mod}\left( {{\frac{1}{64} \times \theta_{1}},1} \right)}} \end{matrix} & (41) \end{matrix}$

Accordingly, the relationships of the periodic functions S(m¹), S(m²), and S(m³) with the rotation angle θ₁ of the first rotating shaft are shown in FIG. 9. As shown in FIG. 9, the periodic signal S(m¹) has a sawtooth waveform which increases monotonically from 0 to 1 for every 4 increase in the rotation angle of the first rotating shaft, the periodic signal S(m²) has a sawtooth waveform which increases monotonically from 0 to 1 for every 16 increase in the rotation angle, and the periodic signal S(m³) has a sawtooth waveform which increases monotonically from 0 to 1 for every 64 increase in the rotation angle.

From the nature of the above-described periodic signals, the rotation angle calculated value θ₁(m^(n−1)) of the first rotating shaft when the number of revolutions ranges to m^(n−1) can be calculated by multiplying the periodic function S(m^(n−1)) by m^(n−1), as in Formula (42) below. [Expression 55] θ_(1(m) _(n−1) ₎ =S _((m) _(n−1) ₎ ×m ^(n−1)  (42) Accordingly, the relationships between the periodic function and the rotation angle θ₁(m^(n−1)) of the first rotating shaft when n is 1 to 4 are represented by Formulae (43) to (46).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 56} \right\rbrack & \; \\ {\theta_{1{(m^{0})}} = {{{S_{(m^{0})} \times m^{0}} \approx p_{1}} = {{mod}\left( {\theta_{1},1} \right)}}} & (43) \\ {\theta_{1{(m^{1})}} = {{{S_{(m^{1})} \times m^{1}} \approx {{{mod}\left( {{\frac{1}{4}\theta_{1}},1} \right)} \times 4}} = {{mod}\left( {\theta_{1},4} \right)}}} & (44) \\ {\theta_{1{(m^{2})}} = {{{S_{(m^{2})} \times m^{2}} \approx {{{mod}\left( {{\frac{1}{16}\theta_{1}},1} \right)} \times 16}} = {{mod}\left( {\theta_{1},16} \right)}}} & (45) \\ {\theta_{1{(m^{3})}} = {{{S_{(m^{3})} \times m^{3}} \approx {{{mod}\left( {{\frac{1}{64}\theta_{1}},1} \right)} \times 64}} = {{mod}\left( {\theta_{1},64} \right)}}} & (46) \end{matrix}$

Formula (44) indicates a sawtooth waveform which changes from 0 to 4 for every 4 revolutions of the first rotating shaft. Formula (45) indicates a sawtooth waveform which changes from 0 to 16 for every 16 revolutions of the first rotating shaft. Formula (46) indicates a sawtooth waveform which increases monotonically from 0 to 64 for every 64 revolutions of the first rotating shaft.

A calculation method for calculating the coefficients R₀ to R_(n−2) shown in Formula (27) from the above-described relational expressions will be described. Since the coefficients R⁰ to R^(n−2) in Formula (42) take only natural numbers, the rotation angle calculated value θ₁(m^(n−1))¹ shown in Formula (27) and the rotation angle calculated value θ₁(m^(n−1)) shown in Formula (42) are not completely consistent with each other but approximate each other. That is, following Formula (47): [Expression 57] θ_(1(m) _(n−1) ₎≈θ_(1(m) _(n−1) ₎′  (47) holds.

When Formula (27) is substituted into the rotation angle calculated value θ₁(m^(n−1))′ in Formula (47), Formula (48) below is derived. [Expression 58] θ_(1(m) _(n−1) ₎ ≈p ₁+(R ₀ ×m ⁰ +R ₁ ×m ¹ +R ₂ ×m ² + . . . +R _(n−2) ×m ^(m−2))×u  (48) Rotation angle calculated values θ₁(m⁰)′, θ₁(m¹)′, θ₁(m²)′, and θ₁(m³)′ when n=1 to 4 are represented as in Formulae (49) to (52) below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 59} \right\rbrack & \; \\ {\theta_{1{(m^{0})}}^{\prime} = p_{1}} & (49) \\ \begin{matrix} {\theta_{1{(m^{1})}}^{\prime} = {p_{1} + {\left( {R_{0} \times m^{0}} \right) \times u}}} \\ {= {\theta_{1{(m^{0})}}^{\prime} + {R_{0} \times m^{0} \times u}}} \end{matrix} & (50) \\ \begin{matrix} {\theta_{1{(m^{2})}}^{\prime} = {p_{1} + {\left( {{R_{0} \times m^{0}} + {R_{1} \times m^{1}}} \right) \times u}}} \\ {= {\theta_{1{(m^{1})}}^{\prime} + {R_{1} \times m^{1} \times u}}} \end{matrix} & (51) \\ \begin{matrix} {\theta_{1{(m^{3})}}^{\prime} = {p_{1} + {\left( {{R_{0} \times m^{0}} + {R_{1} \times m^{1}} + {R_{2} \times m^{2}}} \right) \times u}}} \\ {= {\theta_{1{(m^{2})}}^{\prime} + {R_{2} \times m^{2} \times u}}} \end{matrix} & (52) \end{matrix}$

By deduction from the relationships shown in Formulae (49) to (52), the rotation angle calculated value θ₁(m^(n−1))′ is expressed as in Formula (53) below. [Expression 60] θ_(1(m) _(n−1) ₎′=θ_(1(m) _(n−2) ₎ ′+R _(n−2) ×m ^(n−2) ×u  (53)

In consideration of the fact that the rotation angle calculated value θ₁(m^(n−1))′ is substantially equal to the rotation angle calculated value θ₁(m^(n−1)), Formula (54) below is obtained from the relationships in Formulae (47) and (53) above. The coefficient R_(n−2) is determined in the manner as described below by selecting the coefficient R_(n−2) satisfying the relationship in Formula (54). [Expression 61] θ_(1(m) _(n−1) ₎≈θ_(1(m) _(n−1) ₎′=θ_(1(m) _(n−2) ₎ ′+R _(n−2) ×m ^(n−2) ×u  (54) When θ₁(m^(n−2))′ in the right-hand side of Formula (54) is first moved to the left-hand side, Formula (55) is obtained. [Expression 62] θ_(1(m) _(n−1) ₎−θ_(1(m) _(n−2) ₎ ′≈R _(n−2) ×m ^(n−2) ×u  (55) Assuming that n is 2 and the base unit quantity u is 1, [Expression 63] θ_(1(m) ₁ ₎−θ_(1(m) ₀ ₎ ′≈R ₀ ×m ⁰  (56) is obtained. On the basis of the relationship shown in Formula (44), mod(θ₁,4) is substituted for θ₁(m¹). Additionally, since θ₁(m⁰)′ is substantially equal to θ₁(m⁰), as shown in Formula (47), mod(θ₁,1) shown in Formula (43) is substituted into Formula (56). In this case, [Expression 64] R ₀ ×m ⁰ =R ₀=mod(θ₁,4)−mod(θ₁,1)  (57) holds. Note that m is 4.

In Formula (57), mod(θ₁,4) has sawtooth waves with a period of 4 which rise from 0 to 4 while mod(θ₁,1) has sawtooth waves with a period of 1 which rise from 0 to 1. Accordingly, the coefficient R₀ in Formula (57) forms a stepped waveform which has a period of 4 and three steps with a height of 1, as shown at the bottom of FIG. 10.

When u and n are set to 1 and 3, respectively, in Formula (54), and processing as described above is performed,

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 65} \right\rbrack & \; \\ {{{R_{1} \times m^{1}} = {{{mod}\left( {\theta_{1},16} \right)} - {{mod}\left( {\theta_{1},4} \right)}}}{R_{1} = \frac{{{mod}\left( {\theta_{1},16} \right)} - {{mod}\left( {\theta_{1},4} \right)}}{4}}} & (58) \end{matrix}$ holds.

In Formula (58), mod(θ₁,16) has sawtooth waves with a height of 16 and a period of 16 while mod(θ₁,4) has sawtooth waves with a height of 4 and a period of 4. Accordingly, the coefficient R₁ shown in Formula (58) forms a stepped waveform which has a period of 16 and three steps with a height of 1, as shown in the middle of FIG. 10.

When u and n are set to 1 and 4, respectively, in Formula (54), and processing as described above is performed,

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 66} \right\rbrack & \; \\ {{{R_{2} \times m^{2}} = {{{mod}\left( {\theta_{1},64} \right)} - {{mod}\left( {\theta_{1},16} \right)}}}{R_{2} = \frac{{{mod}\left( {\theta_{1},64} \right)} - {{mod}\left( {\theta_{1},16} \right)}}{16}}} & (59) \end{matrix}$ holds.

In Formula (59), mod(θ₁,64) has sawtooth waves with a height of 64 and a period of 64 while mod(θ₁,16) has sawtooth waves with a height of 16 and a period of 16. Accordingly, the coefficient R₂ in Formula (59) forms a stepped waveform which has a period of 64 and three steps with a height of 1, as shown at the top of FIG. 10.

An integer part of the rotation angle calculated value θ₁(m³)′ calculated by Formula (28) is the sum of values obtained by multiplying the coefficients R₀ to R₂ by 1, 4, and 16, respectively. The waveform of the integer part is as shown in FIG. 11. That is, the rotation angle calculated value θ₁(m³)′ is obtained by adding the angle detected value p₁ of the first rotating shaft to the integer part.

When the coefficient R_(n−2) is to be derived from Formula (54), Formula (54) is deformed as in Formula (60) below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 67} \right\rbrack & \; \\ {R_{n - 2} \approx \frac{\theta_{1{(m^{n - 1})}} - \theta_{1{(m^{n - 2})}}^{\prime}}{m^{n - 2} \times u}} & (60) \end{matrix}$ If u is 1, and n is 2 to 4, the coefficients R₀ to R₂ are given by the formulae below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 68} \right\rbrack & \; \\ {R_{0} \approx \frac{\theta_{1{(m^{1})}} - \theta_{1{(m^{0})}}^{\prime}}{1}} & (61) \\ {R_{1} \approx \frac{\theta_{1{(m^{2})}} - \theta_{1{(m^{1})}}^{\prime}}{4}} & (62) \\ {R_{2} \approx \frac{\theta_{1{(m^{3})}} - \theta_{1{(m^{2})}}^{\prime}}{16}} & (63) \end{matrix}$

Since the coefficients R₀ to R_(n−2) are integers, the integer as the coefficient R_(n−2) can be calculated by, for example, adding 0.5 to the right-hand side of Formula (60) and dropping a fractional part, as shown in Formula (64) below. When S(m^(n−1))×m^(n−1) (Formula (42)) is substituted for θ₁(m^(n−1)) in Formula (64), Formula (65) is obtained.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 69} \right\rbrack & \; \\ \begin{matrix} {R_{n - 2} = {{INT}\left( {{mod}\left( {{\frac{\theta_{1{(m^{n - 1})}} - \theta_{1{(m^{n - 2})}}^{\prime}}{m^{n - 2} \times u} + 0.5},m} \right)} \right)}} \\ {= {{{INT}\left( {{mod}\left( {{\frac{S_{(m^{n - 1})} \times m}{u} - \frac{\theta_{1{(m^{n - 2})}}^{\prime}}{m^{n - 2} \times u} + 0.5},m} \right)} \right)}(65)}} \end{matrix} & (64) \end{matrix}$ INT(x) here refers to an operation which drops a fractional part of a numerical value x. A modulo operation whose unit quantity is m is performed to obtain a calculation result when the coefficient R_(n−2) falls within the effective range of 0 to m−1. As described above, a general formula for calculating the coefficients R₀ to R_(n−2) is obtained as Formula (65).

The multi-turn absolute rotation angle calculated value θ₁(m^(n−1))′ of the first rotating shaft is specifically obtained using Formula (65) for calculating the coefficients R₀ to R_(n−2). For the sake of simplicity of description of calculation procedure, the rotation angle calculated value θ₁(m³)′ of the first rotating shaft is obtained on the assumptions that the number nmax of rotating shafts is 4, that the change ratio is 3/4 (m=4, and that the base unit quantity u is 1. First, at the time of calculation of the rotation angle calculated value θ₁(m³)′, theoretical angle detected values p₁, p₂, p₃, and p₄ of the respective rotating shafts when the rotation angle θ₁ of the first rotating shaft is 53.5 (rev) are obtained.

The rotation angles θ₂, θ₃, and θ₄ of the second, third, and fourth rotating shafts with respect to the rotation angle θ₁ of the first rotating shaft are represented as in the formula below on the basis of Formula (1).

$\begin{matrix} {{\theta_{2} = {{- \frac{3}{4}} \times \theta_{1}}},{\theta_{3} = {\frac{9}{16} \times \theta_{1}}},{\theta_{4} = {{- \frac{27}{64}} \times \theta_{1}}}} & \left\lbrack {{Expression}\mspace{14mu} 70} \right\rbrack \end{matrix}$

If an angle detector with a shaft angle multiplier of 1 (the angle detector outputs a detected signal for one cycle when the corresponding rotating shaft revolves once) is used, the angle detected value p_(n) of each rotating shaft is represented by p_(n)=mod(θ_(n),1). Accordingly, the theoretical angle detected values p₁, p₂, p₃, and p₄ of the respective rotating shafts exhibit numerical values obtained by the formulae below.

$\begin{matrix} {{p_{1} = {{{mod}\left( {\theta_{1},1} \right)} = {{{mod}\left( {53.5,1} \right)} = 0.5}}}\begin{matrix} {p_{2} = {{mod}\left( {{{- \frac{3}{4}}\theta_{1}},1} \right)}} \\ {= {{mod}\left( {{{- \frac{3}{4}} \times 53.5},1} \right)}} \\ {= {{mod}\left( {{- 40.125},1} \right)}} \\ {= 0.875} \end{matrix}\begin{matrix} {p_{3} = {{mod}\left( {{\frac{9}{16}\theta_{1}},1} \right)}} \\ {= {{mod}\left( {{\frac{9}{16} \times 53.5},1} \right)}} \\ {= {{mod}\left( {30.094,1} \right)}} \\ {= 0.094} \end{matrix}\begin{matrix} {p_{4} = {{mod}\left( {{{- \frac{27}{64}}\theta_{1}},1} \right)}} \\ {= {{mod}\left( {{{- \frac{27}{64}} \times 53.5},1} \right)}} \\ {= {{mod}\left( {{- 22.570},1} \right)}} \\ {= 0.430} \end{matrix}} & \left\lbrack {{Expression}\mspace{14mu} 71} \right\rbrack \end{matrix}$

However, an output signal from an actual angle detector includes an error. The rotation angle calculated value θ₁(m³)′ is calculated on the assumption that the angle detected values below that are obtained by adding an error of, e.g., 0.05 (rev) to the theoretical angle detected values p₁, p₂, p₃, and p₄ are detected.

p₁=0.500+0.05=0.550

p₂=0.875+0.05=0.925

p₃=0.094+0.05=0.144

p₄=0.430+0.05=0.480

Assuming that the number nmax of rotating shafts is 4, that m is 4, and that the base unit quantity u is 1, as can be seen from Formula (27), the rotation angle calculated value θ₁(m³)′ is represented as in Formula (66) below. [Expression 72] θ_(1(m) _(n−1) ₎ ′=p ₁ +R ₀ ×m ⁰ +R ₁ ×m ¹ +R ₂ ×m ² =p ₁ +R ₀+4R ₁+16R ₂  (66) Accordingly, in order to obtain the rotation angle calculated value θ₁(m³)′, the coefficients R₀, R₁, and R₂ are sequentially calculated by using Formula (37), Formula (65), Formula (27), and Formula (36) for each of a case where n=2, a case where n=3, and a case where n=4.

The procedures for calculating the coefficients R₀, R₁, and R₂ are as shown below. As shown in the flow chart in FIG. 12, first, the number nmax of rotating shafts is set (to 4 in the example below), and a counter value n is set to 2 (step 121). When the counter value n is 2, the periodic signal value S(m¹) is calculated from the angle detected values p₁ and p₂ by Formula (39) (step 122). The coefficient R₀ corresponding to the periodic signal S(m¹) is obtained by Formula (65) (step 123). Since the coefficient R₀ is used to calculate a next rotation angle calculated value, the coefficient R₀ is stored in a memory. When the coefficient R₀ is obtained, the rotation angle calculated value θ₁(m¹)′ when the counter value n is 2 is calculated from the coefficient R₀ by Formula (50) and is stored in the memory (step 124). The counter value n is incremented by 1. If the counter value n is larger than nmax, the calculation that obtains a rotation angle calculated value ends. Otherwise, the flow advances to step 126 (step 125). Since, as for the calculated rotation angle calculated value θ₁(m¹), a term (the term R₀×m⁰ here) other than the angle detected value p₁ in Formula (50) does not include a detection error, the angle corrected value p₂′ corresponding to the calculated rotation angle calculated value θ₁(m¹)′ is obtained by Formula (36) and is stored in the memory (step 126). The angle corrected value p₂′ is used to calculate the next rotation angle calculated value θ₁(m²)′. The above-described steps are repeated for the number n of rotating shaft=3 and 4, and the coefficients R₁ and R₂ are sequentially obtained. Finally, the rotation angle calculated value θ₁(m³)′ is calculated (step 124), and the flow ends (step 125). The steps that calculate rotation angle calculated values when the number of rotating shafts is 4 have been schematically described above. Even if the number of rotating shafts is above 4, the same processes are repeated, the coefficients R₀ to R_(n−2) are sequentially obtained, and the rotation angle calculated value θ₁(m^(n−1))′ finally calculated. The above-described steps will be described in detail below.

First, the number nmax of rotating shafts is set to 4, and the counter value n is set to 2 (step 121). As for the periodic signal S(m¹), 0.550 and 0.925 are substituted for p₁ and p₂, respectively, in Formula (67) below. The value of the periodic signal S(m¹) is calculated in the manner below to be 0.475 (step 122).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 73} \right\rbrack & \; \\ \begin{matrix} {S_{(m^{1})} = {{mod}\left( {{{k_{1} \times p_{1}} + {k_{2} \times p_{2}}},1} \right)}} \\ {= {{mod}\left( {{p_{1} + p_{2}},1} \right)}} \\ {= {{mod}\left( {{0.550 + 0.925},1} \right)}} \\ {= {{mod}\left( {1.475,1} \right)}} \\ {= 0.478} \end{matrix} & (67) \end{matrix}$ In Formula (67), k₁ and k₂ are 1.

As for the coefficient R₀, 0.475, 4, and 0.550 are substituted for S(m¹), m, and θ₁(m⁰)′=p₁, respectively, in Formula (68) below. The coefficient R₀ is calculated in the manner below to be 1 (step 123).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 74} \right\rbrack & \; \\ \begin{matrix} {R_{0} = {{INT}\left( {{mod}\left( {{{S_{(m^{1})} \times m} - \frac{\theta_{1{(m^{0})}}^{\prime}}{m^{0}} + 0.5},m} \right)} \right)}} \\ {= {{INT}\left( {{mod}\left( {{{S_{(m^{1})} \times m} - p_{1} + 0.5},m} \right)} \right)}} \\ {= {{INT}\left( {{mod}\left( {{{0.475 \times 4} - 0.55 + 0.5},4} \right)} \right)}} \\ {= {{INT}(1.85)}} \\ {= 1} \end{matrix} & (68) \end{matrix}$ The coefficient R₀ is stored in the memory for use at the time of calculation of a rotation angle calculated value to be finally obtained.

When R₀ is obtained, the rotation angle calculated value θ₁(m¹)′ is obtained from Formula (50) as in Formula (69) below (step 124). [Expression 75] θ_(1(m) ₁ ₎′=θ_(1(m) ₀ ₎′(=p ₁)+R ₀ ×m ⁰=0.55+1×1=1.55  (69)

The counter value n is incremented by 1. If the counter value n has not reached 4, the flow advances to a next step (step 125). In step 126, the angle corrected value p₂′ of the second rotating shaft corresponding to the rotation angle calculated value θ₁(m¹)′ is obtained by Formula (36) (step 126).

$\begin{matrix} {p_{2}^{\prime} = {{{mod}\left( {{\left( {- \frac{3}{4}} \right)^{1} \times \theta_{1{(m^{1})}}^{\prime}},1} \right)} = {{{mod}\left( {{- 1.162},1} \right)} = 0.838}}} & \left\lbrack {{Expression}\mspace{14mu} 76} \right\rbrack \end{matrix}$

The angle corrected value p₂′ is used to obtain the coefficient R₁ when the counter value n is 3.

The process flow returns from step 126 to step 122, and same processing as described above is repeated. That is, when the counter value n is 3, the periodic function S(m²) is obtained from Formula (37) in the manner below (step 122).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 77} \right\rbrack & \; \\ \begin{matrix} {S_{(m^{2})} = {{mod}\left( {{{k_{1} \times p_{1}} + {k_{2} \times p_{2}^{\prime}} + {k_{3} \times p_{3}}},1} \right)}} \\ {= {{mod}\left( {{p_{1} + {2\; p_{2}^{\prime}} + p_{3}},1} \right)}} \\ {= {{mod}\left( {{0.550 + {2 \times 0.838} + {1 \times 0.144}},1} \right)}} \\ {= {{mod}\left( {2.370,1} \right)}} \\ {= 0.370} \end{matrix} & (70) \end{matrix}$ In Formula (70), k₁ is 1, k₂=2, and k₃=1.

The coefficient R₁ is calculated by substituting 0.370, 4, and 1.55 for S(m²), m, and θ₁(m¹)′, respectively, in Formula (65). The coefficient R₁ is calculated in the manner below to be 1 (step 123).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 78} \right\rbrack & \; \\ \begin{matrix} {R_{1} = {{INT}\left( {{mod}\left( {{{S_{(m^{2})} \times m} - \frac{\theta_{1{(m^{1})}}^{\prime}}{m^{1}} + 0.5},m} \right)} \right)}} \\ {= {{INT}\left( {{mod}\left( {{{0.370 \times 4} - \frac{1.55}{4} + 0.5},4} \right)} \right)}} \\ {= {{INT}(1.59)}} \\ {= 1} \end{matrix} & (71) \end{matrix}$

When R₁ is obtained, the rotation angle calculated value θ₁(m²)′ is obtained from Formula (51) as in the formula below (step 124).

$\begin{matrix} \begin{matrix} {\theta_{1{(m^{2})}}^{\prime} = {\theta_{1{(m^{1})}}^{\prime} + {R_{1} \times m^{1}}}} \\ {= {1.55 + {1 \times 4}}} \\ {= 5.55} \end{matrix} & \left\lbrack {{Expression}\mspace{14mu} 79} \right\rbrack \end{matrix}$

The angle corrected value p₃′ of the third rotating shaft corresponding to the rotation angle calculated value θ₁(m²)′ is obtained from Formula (36) in the manner below and is stored in the memory (step 126). The angle corrected value p₃′ is used to obtain the coefficient R₂ when the counter value n is 4.

$\begin{matrix} \begin{matrix} {p_{3}^{\prime} = {{mod}\left( {{\left( {- \frac{3}{4}} \right)^{2} \times \theta_{1{(m^{2})}}^{\prime}},1} \right)}} \\ {= {{mod}\left( {{\frac{9}{16} \times 5.55},1} \right)}} \\ {= {{mod}\left( {3.122,1} \right)}} \\ {= 0.122} \end{matrix} & \left\lbrack {{Expression}\mspace{14mu} 80} \right\rbrack \end{matrix}$

When the number n of rotating shafts is 4, the periodic function S(m³) is obtained from Formula (37) in the manner below (step 122).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 81} \right\rbrack & \; \\ \begin{matrix} {S_{(m^{3})} = {{mod}\left( {{{k_{1} \times p_{1}} + {k_{2} \times p_{2}^{\prime}} + {k_{3} \times p_{3}^{\prime}} + {k_{4} \times p_{4}}},1} \right)}} \\ {= {{mod}\left( {{{1 \times p_{1}} + {3 \times p_{2}^{\prime}} + {3 \times p_{3}^{\prime}} + {1 \times p_{4}}},1} \right)}} \\ {= {{mod}\left( {{{1 \times 0.55} + {3 \times 0.838} + {3 \times 0.122} + 0.480},1} \right)}} \\ {= {{mod}\left( {3.91,1} \right)}} \\ {= 0.91} \end{matrix} & (72) \end{matrix}$ In Formula (72), k₁=1, k₂=3, k₃=3, and k₄=1.

The coefficient R₂ is calculated by substituting 0.91, 4, and 5.55 for S(m³), m, and θ₁(m²)′, respectively, in Formula (65). The coefficient R₂ is calculated in the manner below to be 3 (step 123).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 82} \right\rbrack & \; \\ \begin{matrix} {R_{2} = {{INT}\left( {{mod}\left( {{{S_{(m^{3})} \times m} - \frac{\theta_{1{(m^{2})}}^{\prime}}{m^{2}} + 0.5},m} \right)} \right)}} \\ {= {{INT}\left( {{mod}\left( {{{0.91 \times 4} - \frac{5.55}{16} + 0.5},4} \right)} \right)}} \\ {= {{INT}\left( {{mod}\left( {3.79,4} \right)} \right)}} \\ {= 3} \end{matrix} & (73) \end{matrix}$

When R₂ is obtained, the rotation angle calculated value θ₁(m³)′ is obtained from Formula (52) in the manner below (step 124).

$\begin{matrix} \begin{matrix} {\theta_{1{(m^{3})}}^{\prime} = {\theta_{1{(m^{2})}}^{\prime} + {R_{2} \times m^{2}}}} \\ {= {5.55 + {3{{*16}}}}} \\ {= 53.55} \end{matrix} & \left\lbrack {{Expression}\mspace{14mu} 83} \right\rbrack \end{matrix}$

The counter value n is 4, and the process of obtaining a rotation angle calculated value ends (step 125). With the above-described calculations, the rotation angle calculated value θ₁(m³)′ of the first rotating shaft is calculated to be 53.55. As described in paragraph 0095 above, the calculations are based on the assumption that the rotation angle of the first rotating shaft is 53.5 (rev). An error in the rotation angle calculated value θ₁(m³)′ as the calculation result is only 0.05 that is added to the angle detected value of the first rotating shaft, and detection errors from the angle detectors of the second and subsequent rotating shafts are not accumulated.

Embodiment 3

Another calculation method for obtaining coefficients R₀ to R_(n−2) in Formula (27) will be described. The method is the process of obtaining an angle detected value p_(n) of each rotating shaft and a corrected angle corrected value p_(n)′ (Formula (36) of each rotating shaft which is obtained from a multi-turn rotation angle calculated value θ₁(m^(n−1))′ obtained by Formula (27) and determining the coefficients R₀ to R_(n−2) such that the angle corrected value p_(n)′ most closely approximates the angle detected value p_(n) on the assumption that the angle detected value p_(n) and the angle corrected value p_(n)′ are substantially equal.

That the rotation angle calculated value θ₁(m^(n−1))′ of a first rotating shaft can be mathematically expressed as the sum of an angle detected value p₁ of the first rotating shaft and the number of multi-turn revolutions of the first rotating shaft, as represented by Formula (27), has been described above. When Formula (27) is substituted for the rotation angle calculated value θ₁(m^(n−1))′ in Formula (36), the angle corrected value p_(n)′ can be represented by Formula (74) below. The angle corrected value p_(n)′ approximates the angle detected value p_(n).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 84} \right\rbrack & \; \\ \begin{matrix} {p_{n}^{\prime} = {{mod}\left( {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \left( {p_{1} + \left( {{R_{0} \times m^{0}} + {R_{1} \times m^{1}} + {R_{2} \times}} \right.} \right.} \right.}} \\ \left. {\left. {\left. {m^{2} + \ldots + {R_{n - 2} \times m^{n - 2}}} \right) \times u} \right),u} \right) \\ {= {{mod}\left( {{\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \left( {p_{1} + {\sum\limits_{i = 2}^{n}\;{\left( {R_{i - 2} \times m^{i - 2}} \right) \times u}}} \right)},u} \right)}} \\ {\approx p_{n}} \end{matrix} & (74) \end{matrix}$ Note that the part inside right-hand parentheses in a modulo calculation in Formula (74) above corresponds to the rotation angle calculated value θ₁(m^(n−1)) in Formula (27).

In Formula (74) above, since the angle detected value p_(n) is an angle within one revolution which is detected by an angle detector attached to each rotating shaft, and the coefficients R₀ to R_(n−2) are integers ranging from 0 to m−1 inclusive, the angle corrected value p_(n)′ can be determined by appropriately selecting the coefficients R₀ to R_(n−2) such that the angle corrected value p_(n)′ most closely approximates the angle detected value p_(n). For example, an angle corrected value p₂′ of a second rotating shaft can be determined from an angle detected value p₂ in the manner below. That is, as seen from Formula (74), an angle corrected value calculation formula is represented as:

$\begin{matrix} {p_{2}^{\prime} = {{mod}\left( {\left( {- \frac{m \pm 1}{m}} \right)^{1} \times \left( {{p_{1} + \left( {R_{0} \times m^{0} \times u} \right)},u} \right)} \right.}} & \left\lbrack {{Expression}\mspace{14mu} 85} \right\rbrack \end{matrix}$ The integral coefficient R₀ within the range 0≦R⁰<m may be appropriately selected such that a calculation result of the angle correction calculation formula most closely approximates the angle detected value p₂. By substituting the coefficient R₀ thus determined into Formula (74), the angle corrected value p₂′ is obtained. The above-described processing is repeated for n=2 to nmax to determine coefficients R₀ to R_(nmax−2). A multi-turn rotation angle calculated value θ₁(m_(nmax−1))′ of the first rotating shaft can be finally obtained by substituting the coefficients R₀ to R_(nmax−2) into Formula (27).

An equation for calculating the coefficients R₀ to R_(nmax−2) will be obtained below from Equation (74). When the deformation represented by Formula (53) is substituted into Equation (74), the angle corrected value p_(n)′ is represented by an angle corrected value calculation formula in Formula (75) below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 86} \right\rbrack & \; \\ {p_{n}^{\prime} = {{mod}\left( {{\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \left( {\theta_{1{(m^{n - 2})}}^{\prime} + {R_{n - 2} \times m^{n - 2} \times u}} \right)},u} \right)}} & (75) \end{matrix}$

When Formula (75) is expanded, the angle corrected value p_(n)′ is represented as in Formula (76).

$\begin{matrix} {\mspace{79mu}\left\lbrack {{Expression}\mspace{14mu} 87} \right\rbrack} & \; \\ {p_{n}^{\prime} = {{mod}\left( {{{\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 2})}}^{\prime}} + {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times R_{n - 2} \times m^{n - 2} \times u}},u} \right)}} & (76) \end{matrix}$

When Formula (76) is further deformed, the angle corrected value p_(n)′ is represented as in Formula (77) below.

$\begin{matrix} {\mspace{79mu}\left\lbrack {{Expression}\mspace{14mu} 88} \right\rbrack} & \; \\ {p_{n}^{\prime} = {{mod}\left( {{{\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 2})}}^{\prime}} + {\left( {{- 1} \mp \frac{1}{m}} \right)^{n - 1} \times R_{n - 2} \times m^{n - 2} \times u}},u} \right)}} & (77) \end{matrix}$

Even if a numerical value which is an integer multiple of a divisor is added to or subtracted from a dividend in a modulo operation, a result of the modulo operation is not affected. The numerical value is thus removed from the modulo operation. That is, letting b be an integer, the relationship y=mod(a+b×c,c)=mod(a,c) holds. Since R_(n−2) and m^(m−2) are both natural numbers in Formula (77), the term −1×R_(n−2)×m^(m−2)×u is deleted. As a result, Formula (77) is deformed as in Formula (78) below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 89} \right\rbrack & \; \\ {p_{n}^{\prime} = {{mod}\left( {{{\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 2})}}^{\prime}} \mp {\frac{1}{m} \times R_{n - 2} \times u}},u} \right)}} & (78) \end{matrix}$

Since the angle detected value p_(n) is substantially equal to the angle corrected value p_(n)′, the angle detected value p_(n) is represented as in Formula (79) below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 90} \right\rbrack & \; \\ {{p_{n} \approx p_{n}^{\prime}} = {{mod}\left( {{{\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 2})}}^{\prime}} \mp {\frac{1}{m} \times R_{n - 2} \times u}},u} \right)}} & (79) \end{matrix}$

Since the relationship between the angle detected value p_(n) and the coefficient R_(n−2) is derived as in Formula (79) above, the coefficient R_(n−2) can be obtained in the manner below according to the definition of modulo operation. Generally, a modulo operation which obtains a remainder y left over when a±b is divided by c is represented by y=mod(a±b,c), and the expression a±b=n×c+y holds. In the expression, n is an integer, and y falls within the range 0≦y<c. When a is moved to the right-hand side, the expression changes to ±b=n×c+y−a. A modulo operation which obtains a remainder left over when both sides of the expression are divided by c can be expressed as mod(±b,c)=mod(n×c+y−a,c). As described in paragraph 0119, the term n×c inside the parentheses can be deleted, the above expression can be organized into mod(±b,c)=mod(y−a,c). If b falls within the range 0 b<c, b=mod(±(y−a),c) holds. A formula for obtaining the coefficient R_(n−2) from Formula (79) using the relationship is derived in the manner below.

As described in paragraph 0072, the coefficient R_(n−2) in Formula (79) falls within the range 0≦R_(n−2)<m, and 0≦(1/m)×R_(n−2)×u<u holds. Accordingly, if p_(n)′, (−(m±1)/m)^(n−1)×θ₁(m^(n−2))′, (1/m)×R_(n−2)×u, and u in Formula (79) are taken as y, a, b, and c, respectively, mod(±b,c)=mod(y−a,c) can be calculated as b=mod(±(y−a),c) when b falls within the range 0≦b<c, as described above. That is, (1/m)×R_(n−2)×u in the modulo operation of Formula (79) is obtained by Formula (80) below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 91} \right\rbrack & \; \\ {{{\frac{1}{m} \times R_{n - 2} \times u} \approx {{mod}\left( {{\mp \left( {p_{n} - {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 2})}}^{\prime}}} \right)},u} \right)}}{R_{n - 2} \approx {{{mod}\left( {{\mp \left( {p_{n} - {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 2})}}^{\prime}}} \right)},u} \right)} \times \frac{m}{u}}}} & (80) \end{matrix}$

Since mod(a,c)×b=mod(a×b,c×b) holds in modulo operation, the right-hand side of Formula (80) above can be further deformed as in Formula (81) below.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 92} \right\rbrack & \; \\ {R_{n - 2} \approx {{mod}\left( {{{\mp \left( {p_{n} - {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 2})}}^{\prime}}} \right)} \times \frac{m}{u}},m} \right)}} & (81) \end{matrix}$ The coefficient R_(n−2) is obtained by Formula (81). However, since the coefficient R_(n−2) is an integer, a computation result of Formula (81) above is rounded off. The round-off to the nearest integer can be achieved by adding 0.5 to the computation result and performing a modulo operation to generate a carry, as shown in Formula (82) below. Note that INT(X) is an operator which drops a fractional part of X.

$\begin{matrix} {\mspace{79mu}\left\lbrack {{Expression}\mspace{14mu} 93} \right\rbrack} & \; \\ {R_{n - 2} = {{INT}\left( {{mod}\left( {{{{mod}\left( {{{\mp \left( {p_{n} - {\left( {- \frac{m \pm 1}{m}} \right)_{i}^{n - 1} \times \theta_{1{(m^{n - 2})}}^{\prime}}} \right)} \times \frac{m}{u}},m} \right)} + 0.5},m} \right)} \right.}} & (82) \end{matrix}$

Since mod(mod(a,c)+b,c)=mod(a+b,c) actually holds, Formula (82) is deformed as in Formula (83) below, and one modulo operation can be reduced.

$\begin{matrix} {\mspace{79mu}\left\lbrack {{Expression}\mspace{14mu} 94} \right\rbrack} & \; \\ {R_{n - 2} = {{INT}\left( {{mod}\left( {{{{\mp \left( {p_{n} - {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 2})}}^{\prime}}} \right)} \times \frac{m}{u}} + 0.5},m} \right)} \right)}} & (83) \end{matrix}$

Since a calculation formula for calculating the coefficient R_(n−2) is obtained by Formula (83) above, R₀, R₁, and R₂ are obtained from Formula (83) by using the same detected values (paragraph 0098) of the respective rotating shafts as those in Embodiment 2, R₀, R₁, and R₂ are substituted into Formula (27), and a rotation angle calculated value θ₁(m³)′ of the first rotating shaft is calculated. Assume in the calculation example below that a base unit quantity u is 1000 and that detected values p₁, p₂, p₃, and p₄ of the respective rotating shafts are 550, 925, 144, and 480, respectively.

The procedures for calculating the coefficient R₀, R₁, and R₂ are as described below. As shown in the flow chart in FIG. 13, first, the number nmax of rotating shafts is set (to 4 in the example below), and a counter value n is set to 2 (step 131). When the counter value n is 2, a rotation angle calculated value θ₁(m⁰)′(=p₁) and the angle detected value p₂ are substituted into Formula (83), and the coefficient R₀ is calculated. The coefficient R₀ is stored in a memory for use at the time of calculation of a next rotation angle calculated value (step 132). When the coefficient R₀ is obtained, the angle detected value p₁ and the coefficient R₀ are substituted into Formula (27), and a rotation angle calculated value θ₁(m¹)′ is calculated and stored in the memory (step 133). The counter value n is incremented by 1, and the flow returns to step 132 (step 134). The above-described calculation processing is repeated for the counter value n=3 and 4, and the coefficients R₁ and R₂ are obtained. Finally, the rotation angle calculated value θ₁(m³)′ is calculated (step 133). If the counter value n is above nmax, the calculation that obtains a rotation angle calculated value ends (step 134). The steps when the number of rotating shafts is 4 have been schematically described above. Even if the number of rotating shafts is above 4, the same processes are repeated, the coefficients R₀ to R_(n−2) are sequentially obtained, and the rotation angle calculated value θ₁(m^(n−1))′ is finally calculated. The above-described steps will be described in detail below.

First, the number nmax of rotating shafts is set to 4, and the counter value n is set to 2 (step 131). When n=2 is substituted into Formula (83), the coefficient R₀ is obtained by Formula (84) below (step 132).

$\begin{matrix} {\mspace{79mu}\left\lbrack {{Expression}\mspace{14mu} 95} \right\rbrack} & \; \\ {R_{2 - 2} = {{INT}\left( {{mod}\left( {{{{\mp \left( {p_{2} - {\left( {- \frac{m \pm 1}{m}} \right)^{2 - 1} \times \theta_{1{(m^{2 - 2})}}^{\prime}}} \right)} \times \frac{m}{u}} + 0.5},m} \right)} \right)}} & (84) \end{matrix}$ When 925, 550 (=p₁), 4, and 1000 are substituted for p₂, θ₁(m⁰)′, m, and u, respectively, in Formula (84) on the assumption that a driven gear is slower than a driving gear between rotating shafts, Formula (85) below is obtained.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 96} \right\rbrack & \; \\ {R_{0} = {{INT}\left( {{mod}\left( {{{{+ \left( {925 - {\left( {- \frac{3}{4}} \right)^{1} \times 550}} \right)} \times \frac{4}{1000}} + 0.5},4} \right)} \right)}} & (85) \end{matrix}$ The calculated coefficient R₀ is stored in the memory for subsequent processing.

From Formula (50), the rotation angle calculated value θ₁(m¹)′ is represented as: [Expression 97] θ_(1(m) ₁ ₎ ′=p ₁+(R ₀ ×m ⁰)×u  (86) When 550, 1, 4, and 1000 are substituted for p₁, R₀, m, and u, respectively in Formula (86), the rotation angle calculated value θ₁(m¹)′ is calculated as in the formula below and is stored in the memory (step 133).

$\begin{matrix} \begin{matrix} {\theta_{1{(m^{1})}}^{\prime} = {550 + {\left( {1 \times 1} \right) \times 1000}}} \\ {= 1550} \end{matrix} & \left\lbrack {{Expression}\mspace{14mu} 98} \right\rbrack \end{matrix}$

The counter value n is incremented by 1 (n=3), and the flow returns to step 132 (step 134). When n=3 is substituted into Formula (83), the coefficient R₁ is obtained by Formula (87) below.

$\begin{matrix} {\mspace{20mu}\left\lbrack {{Expression}\mspace{14mu} 99} \right\rbrack} & \; \\ {R_{3 - 2} = {{INT}\left( {{mod}\left( {{{{\mp \left( {p_{3} - {\left( {- \frac{m \pm 1}{m}} \right)^{3 - 1} \times \theta_{1{(m^{3 - 2})}^{\prime}}}} \right)} \times \frac{m}{u}} + 0.5},m} \right)} \right)}} & (87) \end{matrix}$ When 144, 1550, 4, and 1000 are further substituted for p₃, θ₁(m¹)′, m, and u, respectively, in the above formula, the coefficient R₁ is obtained by Formula (88) below (step 132).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 100} \right\rbrack & \; \\ \begin{matrix} {R_{1} = {{INT}\left( {{mod}\left( {{{{+ \left( {144 - {\left( {- \frac{3}{4}} \right)^{2} \times 1550}} \right)} \times \frac{4}{1000}} + 0.5},4} \right)} \right)}} \\ {= {{INT}\left( {{mod}\left( {{\frac{\left( {144 - 872} \right) \times 4}{1000} + 0.5},4} \right)} \right)}} \\ {= {{INT}\left( {{mod}\left( {{{- 2.91} + 0.5},4} \right)} \right)}} \\ {= {{INT}\left( {{mod}\left( {{- 2.41},4} \right)} \right)}} \\ {= {{INT}(1.59)}} \\ {= 1} \end{matrix} & (88) \end{matrix}$ The coefficient R₁ is 1, and the value is stored in the memory for subsequent processing (step 132).

From Formula (51), the rotation angle calculated value θ₁(m²)′ is represented as: [Expression 101] θ_(1(m) ₂ ₎′=θ_(1(m) ₁ ₎ ′+R ₁ ×m ¹ ×u  (89) When 1550, 1, 4, and 1000 are substituted for θ₁(m¹)′, R₁, m, and u, respectively, in Formula (89), a rotation angle calculated value θ₁(m²)′ is calculated as in the formula below (step 133).

$\begin{matrix} \begin{matrix} {\theta_{1{(m^{2})}^{\prime}} = {1550 + {1 \times 4^{1} \times 1000}}} \\ {= 1550} \end{matrix} & \left\lbrack {{Expression}\mspace{14mu} 102} \right\rbrack \end{matrix}$

The counter value n is incremented by 1 (n=4), and the process returns to step 132 (step 134). When n=4 is substituted into Formula (83), the coefficient R₂ is obtained by Formula (90) below.

$\begin{matrix} {\mspace{20mu}\left\lbrack {{Expression}\mspace{14mu} 103} \right\rbrack} & \; \\ {R_{4 - 2} = {{INT}\left( {{mod}\left( {{{{\mp \left( {p_{4} - {\left( {- \frac{m \pm 1}{m}} \right)^{4 - 1} \times \theta_{1{(m^{4 - 2})}^{\prime}}}} \right)} \times \frac{m}{u}} + 0.5},m} \right)} \right)}} & (90) \end{matrix}$ When 480, 5550, 4, and 1000 are further substituted for p₄, θ₁(m²)′, m, and u, respectively, in the formula above, the coefficient R₂ is obtained by Formula (91) below (step 132).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 104} \right\rbrack & \; \\ \begin{matrix} {R_{2} = {{INT}\left( {{mod}\left( {{{{+ \left( {480 - {\left( {- \frac{3}{4}} \right)^{3} \times 5550}} \right)} \times \frac{4}{1000}} + 0.5},4} \right)} \right)}} \\ {= {{INT}\left( {{mod}\left( {{\frac{\left( {480 + 2341} \right) \times 4}{1000} + 0.5},4} \right)} \right)}} \\ {= {{INT}\left( {{mod}\left( {{11.28 + 0.5},4} \right)} \right)}} \\ {= {{INT}\left( {{mod}\left( {11.78,4} \right)} \right)}} \\ {= {{INT}(3.78)}} \\ {= 3} \end{matrix} & (91) \end{matrix}$ The coefficient R₂ is 3, and the value is stored in the memory for subsequent processing (step 132).

From Formula (52), θ₁(m³)′ is represented as: [Expression 105] θ_(1(m) ₃ ₎′=θ_(1(m) ₂ ₎ ′+R ₂ ×m ² ×u  (92) When 5550, 3, 4, and 1000 are substituted for θ₁(m²)′, R₂, m, and u, respectively, in Formula (92), the rotation angle calculated value θ₁(m³)′ is calculated as in the formula below (step 133).

$\begin{matrix} \begin{matrix} {\theta_{1{(m^{3})}^{\prime}} = {5550 + {3 \times 4^{2} \times 1000}}} \\ {= 53550} \end{matrix} & \left\lbrack {{Expression}\mspace{14mu} 106} \right\rbrack \end{matrix}$ As a result, the rotation angle calculated value θ₁(m³)′ of the first rotating shaft that is calculated by the method according to Embodiment 3 is 53550 (the base unit quantity u=1000). The rotation angle calculated value is equivalent to the rotation angle calculated value θ₁(m³)′=53.55 (the base unit quantity u=1) of the first rotating shaft that is obtained in Embodiment 2.

Embodiment 4

A fourth embodiment according to the present invention will be described. FIG. 14 shows a block diagram of an angle detection device 140 which detects a multi-turn absolute rotation angle of an output rotating shaft 142 of a motor 141. The principle of obtaining the multi-turn absolute rotation angle of the output rotating shaft 142 is basically the same as that in the first embodiment. Before the principle is described, the configuration of the angle detection device 140 will be described.

Referring to FIG. 14, a gear 143 a having 21 teeth is fixed to a first rotating shaft 143 which is coupled to the motor 141 on the opposite side from the output rotating shaft 142, and a 4× resolver S1 is attached to the first rotating shaft 143 to detect a rotation angle θ₁ of the first rotating shaft 143. The 4× resolver S1 outputs sinusoidal voltage corresponding to the rotation angle of the first rotating shaft 143 and outputs sinusoidal voltage whose four cycles correspond to one revolution of the first rotating shaft 143.

The gear 143 a is meshed with a gear 144 a having 20 teeth which is fixed to a second rotating shaft 144. A 1× resolver S2 is attached to the second rotating shaft 144 to detect a rotation angle θ₂ of the second rotating shaft 144. A gear 144 b having 21 teeth is further fixed to the second rotating shaft 144 and is meshed with a gear 145 a having 20 teeth which is fixed to a third rotating shaft 145. A 1× resolver S3 is attached to the third rotating shaft 145 to detect a rotation angle θ₃ of the third rotating shaft 145. The gears 144 a and 144 b that are fixed to the second rotating shaft 144 are integrally formed resin gears and may be formed integrally with the rotating shaft.

By way of example, the angle detection device 140 with the above-described configuration transmits revolution of the motor by the gears fixed to the three rotating shafts and calculates an absolute rotation angle of the motor rotating shaft from the rotation angles of the respective rotating shafts. By selecting the respective numbers of teeth of the gears such that the change ratio between gears meshed together is (m±1)/m, the absolute rotation angle of the motor rotating shaft is calculated by the computation formula below.

If the change ratio between adjacent rotating shafts is set to (m+1)/m, a rotation angle θ_(n) of each rotating shaft is obtained by:

$\begin{matrix} {\theta_{n} = {{\left( {- \frac{m + 1}{m}} \right)^{n - 1} \times \theta_{1}} = {\left( {{- 1} - \frac{1}{m}} \right)^{n - 1} \times \theta_{1}}}} & \left\lbrack {{Expression}\mspace{14mu} 107} \right\rbrack \end{matrix}$

Since the angle detectors S1 to S3 detect the rotation angles of the first to third rotating shafts 143 to 145, detected values p₁ to p₃ from the angle detectors S1 to S3 can be expressed by Formulae (93) to (95), as shown in Formula (6) used in the first embodiment. Note that since the angle detector S1 is a 4× detector which outputs a detected value for 4 cycles while the rotating shaft revolves once, a detected quantity u₁ per one cycle of the first rotating shaft 143 is set to 0.25. Since the angle detectors S2 and S3 are 1× detectors, detected quantities u₂ and u₃ per one cycle are set to 1.

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 108} \right\rbrack & \; \\ {p_{1} = {{{mod}\left( {{1 \times \theta_{1}},u_{1}} \right)} = {{mod}\left( {{1 \times \theta_{1}},0.25} \right)}}} & (93) \\ \left\lbrack {{Expression}\mspace{14mu} 109} \right\rbrack & \; \\ {p_{2} = {{{mod}\left( {{\left( {{- 1} - \frac{1}{m}} \right) \times \theta_{1}},u_{2}} \right)} = {{mod}\left( {{\left( {{- 1} - \frac{1}{m}} \right) \times \theta_{1}},1} \right)}}} & (94) \\ \left\lbrack {{Expression}\mspace{14mu} 110} \right\rbrack & \; \\ \begin{matrix} {p_{3} = {{mod}\left( {{\left( {1 + \frac{2}{m} + \frac{1}{m^{2}}} \right) \times \theta_{1}},u_{3}} \right)}} \\ {= {{mod}\left( {{\left( {1 + \frac{2}{m} + \frac{1}{m^{2}}} \right) \times \theta_{1}},1} \right)}} \end{matrix} & (95) \end{matrix}$

In order to calculate an absolute rotation angle of the first rotating shaft 143, the detected quantities upper cycle of the respective rotating shafts need to be equalized. The detected values of the second and third rotating shafts 144 and 145 are converted to 4×, as in Formulae (96) and (97).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 111} \right\rbrack & \; \\ {p_{2}^{\prime} = {{mod}\left( {{\left( {{- 1} - \frac{1}{m}} \right) \times \theta_{1}},0.25} \right)}} & (96) \\ \left\lbrack {{Expression}\mspace{14mu} 112} \right\rbrack & \; \\ {p_{3}^{\prime} = {{mod}\left( {{\left( {1 + \frac{2}{m} + \frac{1}{m^{2}}} \right) \times \theta_{1}},0.25} \right)}} & (97) \end{matrix}$

In light of u set to 0.25, assume a periodic signal whose one cycle corresponds to m/4 revolutions of the first rotating shaft. A modulo formula representing the periodic signal can be expressed as:

$\begin{matrix} {{mod}\left( {{\frac{1}{m} \times \theta_{1}},0.25} \right)} & \left\lbrack {{Expression}\mspace{14mu} 113} \right\rbrack \end{matrix}$ The modulo formula can be deformed using the detected values p₁ and p₂′ of the first and second rotating shafts 143 and 144, as in Formula (98).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 114} \right\rbrack & \; \\ {{{mod}\left( {{\frac{1}{m} \times \theta_{1}},0.25} \right)} = {{mod}\left( {{- \left( {p_{1} + p_{2}^{\prime}} \right)},0.25} \right)}} & (98) \end{matrix}$

Assuming a periodic signal whose one cycle corresponds to m²/4 revolutions of the first rotating shaft, a modulo formula representing the periodic signal can be expressed as:

$\begin{matrix} {{mod}\left( {{\frac{1}{m^{2}} \times \theta_{1}},0.25} \right)} & \left\lbrack {{Expression}\mspace{14mu} 115} \right\rbrack \end{matrix}$ The modulo formula can be deformed using the detected values p₁, p₂′, and p₃′ of the first to third rotating shafts 143 to 145, as in Formula (99).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 116} \right\rbrack & \; \\ {{{mod}\left( {{\frac{1}{m^{2}} \times \theta_{1}},0.25} \right)} = {{mod}\left( {{p_{1} + {2p_{2}^{\prime}} + p_{3}^{\prime}},0.25} \right)}} & (99) \end{matrix}$

When m=20 is substituted into Formula (99), Formula (99) can be represented as in Formula (100).

$\begin{matrix} \left\lbrack {{Expression}\mspace{14mu} 117} \right\rbrack & \; \\ {{{mod}\left( {{\frac{1}{400} \times \theta_{1}},0.25} \right)} = {{mod}\left( {{p_{1} + {2p_{2}^{\prime}} + p_{3}^{\prime}},0.25} \right)}} & (100) \end{matrix}$ If the both sides of Formula (100) are multiplied by 400, Formula (101) is obtained. [Expression 118] θc=mod(θ₁,100)=mod(p ₁+2p ₂ ′+p ₃′,0.25)×400  (101)

As seen from Formula (101), when the first rotating shaft 143 revolves 100 times, a signal for one cycle is obtained. An absolute rotation angle for 100 revolutions can be detected. As shown in FIG. 14, a gear 146 which reduces the number of revolutions of the output rotating shaft 142 of the motor 141 to one-hundredth. As a result, a reduction gear ratio and a multi-turn detection range are consistent with each other. This allows the angle detection device 140 to detect an absolute rotation angle for one revolution of a gear output shaft 147.

Since the relationship shown in Formula (10) is obtained, as described above, the embodiment shown in FIG. 14 can detect an absolute rotation angle for 100 revolutions. Generally, if an NX angle detector is used, a multi-turn detection range whose upper end is represented by m^(n−1)/N is obtained.

An NX detected value can be obtained by calculation from a 1× detected value. Even without actual use of an NX angle detector, it is possible to reduce a multi-turn detection range to 1/N to suit a multi-turn detection range required for an application using a rotation angle detection device.

Depending on the change ratio of (m±1)/m, calculation of:

$\begin{matrix} {\mspace{20mu}\left\lbrack {{Expression}\mspace{14mu} 119} \right\rbrack} & \; \\ {{{mod}\left( {{\left( \frac{1}{m} \right)^{n - 1} \times \theta_{1}},u} \right)} = {{mod}\left( {\left( {{k_{1} \times p_{1}} + {k_{2} \times p_{2}} + \ldots + {k_{n} \times p_{n}}} \right),u} \right)}} & (102) \end{matrix}$ can also be performed without consideration of coefficients k₁ to k_(n) in the expansion of the binomial (x+1)^(n−1).

For example, assume that m=3, i.e., m⁻¹⁼2 holds. If a rotation angle is detected up to m³=27 revolutions using a detected signal of a fourth rotating shaft, calculation can be performed not only by θ_(c)=mod(p₁+3p₂+3p₃+p₄,1)×m³ but also by θ_(c)=mod(p₁+p₂+p₄,1)×m³.

Note that detected values p_(n) of the respective rotating shafts include not only a value obtained by directly processing a signal from a detector but also a value obtained by converting a signal to a signal with a different period. Although the above-described embodiment performs the process of converting each of the detected values of the second and third rotating shafts from a long-period signal (1× signal) to a short-period signal (4× signal), the process of generating a 1× signal of a first shaft from a combination of an n× detector of the first shaft and a 1× detector with a different change ratio of a second shaft may be applied to the present invention, as described in Japanese Patent No. 3967963 described above. In the above description, a rotation angle of an odd-numbered rotating shaft is treated as positive, an even-numbered rotating shaft is treated as negative, and the rotation angles are added up. However, even if rotation angles are treated as positive, and each rotation angle is added or subtracted according to a rotation direction, the same result is obtained.

FIG. 15 is a block diagram of a rotation angle detection device 150 for calculating a multi-turn absolute rotation angle θc of the motor 141 on the basis of the fourth embodiment shown in FIG. 14. In FIG. 15, elements same as or similar to the elements shown in FIG. 14 are denoted by same reference numerals.

The fourth embodiment shown in FIG. 15 is basically the same as the first embodiment shown in FIG. 3 except that the number of rotating shafts is 3, that a resolver is used as an angle detector, and that the 1/100 gear is coupled to the output shaft of the motor 141.

Referring to FIG. 15, the gear 143 a having 21 teeth is fixed to the first rotating shaft 143 that is coupled to the motor 141 on the opposite side from the output rotating shaft 142, and the 4× resolver S1 is attached to the first rotating shaft 143. The gear 143 a is meshed with the gear 144 a having 20 teeth that is fixed to the second rotating shaft 144. The change ratio between the gear 143 a and the gear 144 a is 21/20. The gear 144 b having 21 teeth is also fixed to the second rotating shaft 144 and is meshed with the gear 144 a having 20 teeth that is fixed to the third rotating shaft 145. The 1× resolvers S2 and S3 are attached to the second and third rotating shafts, respectively.

FIG. 16 shows the relationships between the rotation angle of the first rotating shaft and the rotation angles of the other rotating shafts. As shown in FIG. 16, since the change ratios between the gear 143 a and the gear 144 a and between the gear 144 b and the gear 145 a are 21/20, the rotation angles of the second and third rotating shafts are larger than that of the first rotating shaft.

Referring back to FIG. 15, two sinusoidal detected voltages (a sin component and a cosin component) from each of the resolvers S1 to S3 are sent to an AD converter 153 of a signal processing circuit 152 via a signal line 151 a, 151 b, or 151 c. The AD converter 153 converts the detected voltages to digital values, which are sent to an RD conversion computing circuit 154. The RD conversion computing circuit 154 calculates an angle from the two received digital values (the sin component and cosin component) and subjects the detected voltages to various types of accuracy correction, like the RD conversion computing circuit 38 according to the first embodiment. The angle detected values p₁, p₂, and p₃ subjected to the processes are sent to a multi-turn computing circuit 155, and the multi-turn absolute rotation angle θc is calculated by Formula (101).

FIG. 17 shows the angle detected values p1, p2, and p3 of the first to third rotating shafts that are obtained with respect to the number of revolutions of the first rotating shaft by the RD conversion computing circuit 154. The bottom line in FIG. 17 shows the rotation angle detected value of the first rotating shaft from the 4× resolver. A 4× resolver outputs detected voltages for 4 cycles when a rotating shaft revolves once. Accordingly, when the first rotating shaft revolves once, detected voltages for four sawtooth waves are output. The middle line and the top line in FIG. 17 show detected voltages from the resolvers S2 and S3, respectively, which represent the rotation angles of the second and third rotating shafts. Since the resolvers S2 and S3 are 1× resolvers, each resolver outputs detected voltages for one cycle when the rotating shaft revolves once.

FIG. 18 shows periodic signals with respect to the number of revolutions of the first rotating shaft which are obtained by Formulae (98) and (99). Signal waves at the bottom in FIG. 18 represent a periodic signal whose one cycle corresponds to 5 revolutions of the first rotating shaft and which is obtained by Formula (98). That is, the periodic signal is calculated on the basis of the angle detected values p₁ and p₂ that are detected by the resolvers S1 and S2. Signal waves at the top in FIG. 18 represent a periodic signal whose one cycle corresponds to 100 revolutions of the first rotating shaft and which is obtained by Formula (99). That is, the periodic signal is calculated on the basis of the angle detected values p₁, p₂, and p₃ that are detected by the resolvers S1, S2, and S3. As described above, the multi-turn absolute rotation angle θc of the first rotating shaft can be obtained from the angle detected values p₁, p₂, and p₃ that are detected by the resolvers S1, S2, and S3, respectively, by Formula (101).

In Embodiment 1 above, an optical encoder is used as the angle detector of the first rotating shaft, and MR rotation angle sensors using MR elements are used as the angle detectors of the second rotating shaft to the fourth rotating shaft. In Embodiment 4, the resolvers are used. However, embodiment of the present invention does not limit the types of the angle detectors. Gears are used as the transmission mechanism. Means for changing rotation angles, however, is not limited to gears, and examples of the means include a transmission such as a belt, a chain, or a traction drive. Since (m±1)/m described above represents a change ratio, and the embodiments have been described using gears as the transmission mechanism, m and m±1 correspond to the numbers of teeth of gears. The terms, however, are not limited to the numbers of teeth of gears.

Embodiment 5

FIG. 19 is a configuration block diagram of a transmission mechanism 190 of a rotation angle detection device according to a fifth embodiment of the present invention. The transmission mechanism 190 is a transmission mechanism which is obtained by providing the transmission mechanisms 10 shown in FIG. 1 in parallel and is made up of a gear mechanism 191 in a first system and a gear mechanism 192 in a second system. A gear 194 a which is attached to a motor rotating shaft 194 of a motor 193 is meshed with a gear 195 a which is attached to a first rotating shaft 195, and the gear ratio between the motor rotating shaft 194 and the first rotating shaft 195 is 1:N. In the embodiment shown in FIG. 19, the first rotating shaft 195 is a gear mechanism component common to the gear mechanisms 191 and 192 in the first and second systems. The first rotating shaft 195, however, need not be common.

The gear mechanism 191 in the first system transmits revolution of the motor from the first rotating shaft 195 to second and third rotating shafts 196 and 197. A gear 195 b of the first rotating shaft 195 meshes with a gear 196 a of the second rotating shaft 196, and a gear 196 b of the second rotating shaft 196 meshes with a gear 197 a of the third rotating shaft 197. Rotation angles of the first to third rotating shafts are detected by angle detectors S1 to S3, respectively. The change ratio between gears meshed together of the gear mechanism 141 in the first system is set to (m₁±1)/m₁.

As shown in FIG. 19, in the gear mechanism 192 in the second system, gears 198 a, 198 b, and 199 a are attached to fourth and fifth rotating shafts 198 and 199. Revolution of the motor 193 is transmitted from a gear 195 c of the first rotating shaft 195 to the gear 199 a via the gears 198 a and 198 b. Rotation angles of the first and second rotating shafts are detected by angle detectors S3 and S4, respectively. The change ratio between gears meshed together of the gear mechanism 192 in the second system is set to (m₂±1)/m₂.

Revolution of the motor 193 is reduced to 1/N via the gear 194 a and gear 195 a and is transmitted to the first rotating shaft 195. Revolution of the first rotating shaft 195 is transmitted from the gear 195 b to the gear mechanism 191 in the first system and from the gear 195 c to the gear mechanism 192 in the second system. Periodic signals which are obtained on the basis of angle detected values detected by the angle detectors S1 to S3 of the gear mechanism 191 in the first system and the angle detectors S1, S4, and S5 of the gear mechanism 192 in the second system are calculated by the same calculation method as the periodic signal calculation method described in the first embodiment. It is as described in Japanese Patent Laid-Open No. 2002-107178 and Japanese Patent No. 3967963 that if periods obtained in respective systems are relatively prime to each other, the number of revolutions corresponding to a period which is the least common multiple of the periods can be detected. Accordingly, for example, if the periodic signals of the first and second systems have periods of C₁ and C₂, respectively, multiple turns corresponding to the least common multiple of C₁ and C₂ can be detected by generating a signal with a period which is the least common multiple.

Assume that, in the transmission mechanism 190 in FIG. 19, m₁ is 15, m₂ is 16, and N is 10. In this case, the number of multi-turn revolutions which can be detected by the transmission mechanism 190 is as follows. Since the gear mechanism 191 in the first system and the gear mechanism 192 in the second system are each made up of three rotating shafts, the gear mechanism 191 and 192 can produce a periodic signal with a period of m₁ ²=225 and a periodic signal with a period of m₂ ²=256, respectively, as described in paragraph 0038. The periods are relatively prime to each other, and the least common multiple of the periods is 225 (period)×256 (period)=57,600 (period). Since the first rotating shaft 195 is reduced in speed to 1/10 of the motor rotating shaft 194, a detectable multi-turn detection range of the motor rotating shaft is 10 times, up to 576,000 revolutions.

As has been described above, in the fifth embodiment, the transmission mechanisms according to the first embodiment are provided in parallel, and detection ranges of the numbers of revolutions or periods of periodic signals which are obtained from the respective transmission mechanisms provided in parallel are set to be relatively prime to each other. With this configuration, a multi-turn detection range of a rotation angle detection device can be easily expanded. Although two parallel transmission mechanisms are provided in the fifth embodiment, if more parallel transmission mechanisms are provided, a rotation angle detection device with a wider multi-turn rotation angle detection range can be achieved.

Note that, in the above embodiments, an optical encoder is used as the angle detector of the first rotating shaft, and MR rotation angle sensors using MR elements are used as the angle detectors of the second to fourth rotating shafts. However, embodiment of the present invention does not limit the types of the angle detectors. Gears are used as the transmission mechanism. Means for changing rotation angles, however, is not limited to gears, and examples of the means include a transmission such as a belt, a chain, or a traction drive. Since (m±1)/m described above represents a change ratio, and the present embodiments have been described using gears as the transmission mechanism, m and m±1 correspond to the numbers of teeth of gears. The terms, however, are not limited to the numbers of teeth of gears.

The present embodiments have illustrated cases where a base unit quantity u for rotation angle detection is 1 (rev)

or 1000 (pulse/rev). Any unit quantity, such as u=360(°), may be used as long as base unit quantities for respective rotating shafts are the same.

The present embodiments also have illustrated a case where a detector with a shaft angle multiplier of 1× (which outputs a signal for one cycle when a rotating shaft revolves once) is used. Even in a case where a detector with a shaft angle multiplier of n×(which outputs a signal for n cycles when a rotating shaft revolves once) is used, calculation of a multi-turn rotation angle is also possible. In this case, a multi-turn rotation angle detection range is 1/n. Note that even if detectors with different shaft angle multipliers are used, a multi-turn rotation angle can be calculated by performing calculation processing that equalizes all base unit quantities.

EXPLANATIONS OF REFERENCE NUMERALS

-   rotating shaft: 11 to 15, 23 to 26, 143 to 145, 194 to 199 -   gear: 11 a, 12 a, 12 b, 13 a, 13 b, 14 a, 14 b, 23 a, 24 a, 24 b, 25     a, 25 b, 26 a, 26 b, 143 a, 144 a, 145 a, 194 a, 195 a, 195 b, 196     a, 196 b, 197 a, 198 a, 198 b, 199 a -   motor: 21, 141, 193 -   optical absolute encoder: 22 -   signal processing circuit: 28, 152 -   magnet: 29 a, 29 b, 29 c -   MR rotation angle sensor: 30 a, 30 b, 30 c -   angle detector: S1 to Sn 

What is claimed is:
 1. A rotation angle detection device for detecting an absolute rotation angle of a first rotating shaft of first to nmax-th rotating shafts, comprising: a transmission mechanism adapted to transmit revolution from the first rotating shaft of the first to nmax-th rotating shafts down to an nmax-th rotating shaft of the first to nmax-th rotating shafts; and an angle detector adapted to detect respective rotation angles of the first rotating shaft to an n-th rotating shaft of the first to nmax-th rotating shafts; wherein: the first rotating shaft comprises a rotation angle θ₁; the n-th rotating shaft comprises a rotation angle θ_(n); and the rotation angle θ_(n) satisfies a relationship with the rotation angle θ₁ as follows: ${\theta_{n} = {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1}}},$ where (a) nmax and m are integers not less than 3, and (b) n falls within a range 1≦n≦nmax; and (m±1)/m is a change ratio between each adjacent two of the first to the nmax-th rotating shafts.
 2. The rotation angle detection device according to claim 1, wherein: a rotation angle calculated value θ_(c) of the first rotating shaft is calculated as follows: θ_(c)=mod((k ₁ ×p ₁ +k ₂ ×p ₂ + . . . +k _(n) ×p _(n)),u)×m ^(n−1) where (a) p₁, P₂, . . . , p_(n) are angle detected values of the first rotating shaft to the n-th rotating shaft which are detected by the angle detector, (b) u is an angle detected quantity for one cycle of the first to nmax-th rotating shafts, (c) mod(x,a) is a modulo operation which obtains a remainder left over when x is divided by a, and (d) coefficients k₁, . . . , k_(n) are a positive integer or a negative integer including a zero and the coefficients k₁, . . . , k_(n) correspond to a coefficient of an (n−1)-th degree term in x, respectively, when an expression (x+1)^(n−1) is expanded.
 3. The rotation angle detection device according to claim 1, wherein: the transmission mechanism transmits the revolution with the change ratio of (m±1)/m.
 4. A rotation angle detection device for detecting a multi-turn absolute rotation angle of a first rotating shaft coupled to a motor, comprising: a gear mechanism comprising multiple gears, the multiple gears being fixed to rotating shafts from the first rotating shaft to an n-th rotating shaft; and an angle detector adapted to detect respective rotation angles of the first rotating shaft to the n-th rotating shaft; wherein: the multiple gears continuously mesh with each other; and the gear mechanism comprises multiple pairs of gears, each pair of the multiple pairs of gears being meshed together such that a ratio of change in rotational speed is (m±1)/m between two continuous rotating shafts.
 5. A method for calculating a multi-turn absolute rotation angle of a first rotating shaft in a multi-turn absolute rotation angle detection device, the multi-turn absolute rotation angle detection device including (i) a transmission mechanism adapted to transmit revolution from the first rotating shaft of first to nmax-th rotating shafts down to the nmax-th rotating shaft and (ii) an angle detector adapted to detect angle detected values p₁ to p_(nmax) within one revolution of the first rotating shaft to the nmax-th rotating shaft, wherein a rotation angle θ_(n) of an n-th rotating shaft satisfies a relationship with a rotation angle θ₁ of the first rotating shaft as follows: ${\theta_{n} = {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1}}},$ where (a) nmax and m are integers not less than 3, and (b) n falls within a range 1≦n≦nmax, the method comprising: sequentially determining a coefficient R₀ to a coefficient R_(nmax−2) by repeating, for n=2 to nmax, a rotation angle calculation comprising: (1) detecting an angle detected value p_(n) within one revolution of the n-th rotating shaft by the angle detector; (2) estimating a coefficient R_(n−2) as a function of a rotation angle calculated value θ₁(m^(n−2))′; and (3) obtaining a rotation angle calculated value θ(m^(n−1))′ by substituting the coefficient R_(n−2) determined into a rotation angle calculation formula as follows: ${\theta_{1{(m^{n - 1})}^{\prime}} = {p_{1} + {\sum\limits_{i = 2}^{n}{\left( {R_{i - 2} \times m^{i - 2}} \right) \times u}}}};$ and obtaining a multi-turn absolute rotation angle calculated value θ₁(m^(nmax−1))′ by substituting the coefficient R₀ to the coefficient R_(nmax−2) into the rotation angle calculation formula; wherein: the coefficients R₀ to R_(nmax−2) are integers ranging from 0 to m−1 inclusive; u is a base unit quantity; and a rotation angle calculated value θ₁(m⁰)′ is the angle detected value p₁ of the first rotating shaft.
 6. The method according to claim 5, wherein: estimating the coefficient R_(n−2) comprises: obtaining a periodic signal S(m^(n−1)) using detected values of n shafts by a periodic signal formula as follows: S _((m) _(n−1) ₎=mod((k ₁ ×p ₁ +k ₂ ×p ₂ ′+k ₃ ×p ₃ ′+ . . . +k _(n−1) ×p _(n−1) ′+k _(n) ×p _(n))×J ^(n−1) ,u), where (a) k₁, k₂, . . . k_(n) are coefficients of a (n−1)-th degree term in x of an expansion k₁×x⁰+k₂×x¹+k₃×x²+ . . . +k_(n)x^(n−1) of (x+1)^(n−1), (b) mod(x,a) is a modulo operation which obtains a remainder left over when x is divided by a, and (c) J is a sign-adjusting term which is 1 if a change ratio between each adjacent two of the first to nmax-th rotating shafts is −(m−1)/m and is −1 when the change ratio is −(m+1)/m; multiplying the periodic signal S(m^(n−1)) of the n-th rotating shaft by m^(n−1) to obtain a rotation angle calculated value θ₁(m^(n−1)); and determining the coefficient R_(n−2) such that a result of calculating the rotation angle calculation formula that obtains the rotation angle calculated value θ₁(m^(n−1))′ of the n-th rotating shaft approximates the rotation angle calculated value θ¹(m^(n−1)); wherein: the rotation angle calculated value θ₁(m^(n−1))′ of the n-th rotating shaft is obtained by substituting the coefficient R_(n−2) that is determined into the rotation angle calculation formula; and an angle corrected value p_(n)′ is obtained by substituting the rotation angle calculated value θ₁(m^(n−1))′ obtained into an angle corrected value formula as follows: $p_{n}^{\prime} = {{{mod}\left( {{\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 1})}^{\prime}}},u} \right)}.}$
 7. The method according to claim 6, wherein: estimating the coefficient R_(n−2) comprises computing the coefficient R_(n−2) according to an operation INT(x) as follows: ${R_{n - 2} = {{INT}\;\left( {{mod}\left( {{\frac{S_{(m^{n - 1})} \times m}{u} - \frac{\theta_{1{(m^{n - 2})}^{\prime}}}{m^{n - 2} \times u} + 0.5},m} \right)} \right)}},$ where the operation INT(x) drops a fractional part of a numerical value of x.
 8. The method according to claim 6, wherein: the multi-turn absolute rotation angle detection device further includes (a) multiple other transmission mechanisms which are provided in parallel with the transmission mechanism and (b) multiple other angle detectors; and the method further comprises calculating multiple periodic signals based on multiple angle detected values detected by the angle detector and the multiple other angle detectors.
 9. The method according to claim 8, wherein: periods of the multiple periodic signals are relatively prime to each other.
 10. The method according to claim 5, wherein: estimating the coefficient R_(n−2) comprises determining an integer which most closely approximates a result of calculating an integer formula as follows: $\frac{\theta_{1{(m^{n - 1})}} - \theta_{1{(m^{n - 2})}^{\prime}}}{m^{n - 2} \times u}.$
 11. The method according to claim 5, wherein: the multi-turn absolute rotation angle detection device further includes (a) multiple other transmission mechanisms which are provided in parallel with the transmission mechanism and (b) multiple other angle detectors; and the method further comprises calculating the multi-turn absolute rotation angle based on multiple angle detected values detected by the angle detector and the multiple other angle detectors.
 12. A device for calculating a multi-turn absolute rotation angle, comprising: a transmission mechanism adapted to transmit revolution from a first rotating shaft of first to nmax-th rotating shafts down to an nmax-th rotating shaft of the first to nmax-th rotating shafts; an angle detector adapted to detect an angle detected value p₁ to an angle detected value p_(nmax) within one revolution of the first rotating shaft to the nmax-th rotating shaft; and a computing unit adapted to calculate a multi-turn absolute rotation angle calculated value θ₁(m^(nmax−1))′ of the first rotating shaft based on the angle detected value p₁ to the angle detected value p_(nmax); wherein: the first rotating shaft comprises a rotation angle θ₁; an n-th rotating shaft of the first to nmax-th rotating shafts comprises a rotation angle θ_(n); and the rotation angle θ_(n) satisfies a relationship with the rotation angle θ₁ as follows: ${\theta_{n} = {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1}}},$ where (a) nmax and m are integers not less than 3, and (b) n falls within a range 1≦n≦nmax; the computing unit sequentially determines values of a coefficient R₀ to a coefficient R_(nmax−2) by repeatedly, for n=2 to nmax, determining a coefficient R_(n−2) from a rotation angle calculated value θ₁(m^(n−2))′ and from an angle detected value p_(n) of the n-th rotating shaft and calculating based on the coefficient R_(n−2) that is determined a rotation angle calculated value θ₁(m^(n−1))′ by a rotation angle calculation formula as follows: ${\theta_{1{(m^{n - 1})}^{\prime}} = {p_{1} + {\sum\limits_{i = 2}^{n}{\left( {R_{i - 2} \times m^{i - 2}} \right) \times u}}}},$ and obtains the multi-turn absolute rotation angle calculated value θ₁(m^(nmax−1))′ of the first rotating shaft; the coefficients R₀ to R_(nmax−2) are integers ranging from 0 to m−1 inclusive; u is a base unit quantity; and a rotation angle calculated value)θ₁(m⁰)′ is the angle detected value p₁ of the first rotating shaft.
 13. The device according to claim 12, wherein the computing unit contains circuitry configured to: obtain a periodic signal S(m^(n−1)) obtained from detected values of n shafts by a period signal formula as follows: S _((m) _(n−1) ₎=mod((k ₁ ×p ₁ +k ₂ ×p ₂ ′+k ₃ ×p ₃ ′+ . . . +k _(n−1) ×p _(n−1) ′+k _(n) ×p _(n))×J ^(n−1) ,u) where (a) k₁, k₂, . . . k_(n) are coefficients of a (n−1)-th degree term in x of an expansion k₁×x⁰+k₂×x¹+k₃×x²+ . . . +k_(n)x^(n−1) of (x+1)^(n−1), (b) mod(x,a) is a modulo operation which obtains a remainder left over when x is divided by a, and (c) J is a sign-adjusting term which is 1 if a change ratio between each adjacent two of the first to nmax-th rotating shafts is −(m−1)/m and is −1 when the change ratio is −(m+1)/m; obtain a rotation angle calculated value θ₁(m^(n−1)) by multiplying the periodic signal S(m^(n−1)) of the n-th rotating shaft by m^(n−1); determine a coefficient R_(n−2) such that a result of calculating the rotation angle calculation formula that obtains the rotation angle calculated value θ₁(m_(n−1))′ of the n-th rotating shaft approximates the rotation angle calculated value θ₁(m^(n−1)); substitute the coefficient R_(n−2) determined into the rotation angle calculation formula to obtain the rotation angle calculated value θ₁(m^(n−1))′ of the n-th rotating shaft; and obtain an angle corrected value p^(n)′ by substituting the rotation angle calculated value θ₁(m^(n−1))′ obtained into an angle corrected value formula as follows: $p_{n}^{\prime} = {{{mod}\left( {{\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 1})}^{\prime}}},u} \right)}.}$
 14. The device according to claim 13, wherein: the coefficient R_(n−2) is determined according to an operation INT(x) as follows: ${R_{n - 2} = {{INT}\;\left( {{mod}\left( {{\frac{S_{(m^{n - 1})} \times m}{u} - \frac{\theta_{1{(m^{n - 2})}^{\prime}}}{m^{n - 2} \times u} + 0.5},m} \right)} \right)}},$ where the operation INT(x) drops a fractional part of a numerical value x.
 15. The device according to claim 13, further comprising: multiple other transmission mechanisms which are provided in parallel with the transmission mechanism; and multiple other angle detectors; wherein: multiple periodic signals are calculated based on multiple angle detected values detected by the angle detector and the multiple other angle detectors.
 16. The device according to claim 15, wherein: periods of the multiple periodic signals are relatively prime to each other.
 17. The device according to claim 12, wherein: the coefficient R_(n−2) is obtained by determining an integer which most closely approximates a result of calculating an integer formula as follows: $\frac{\theta_{1{(m^{n - 1})}} - \theta_{1{(m^{n - 2})}^{\prime}}}{m^{n - 2} \times u}.$
 18. The device according to claim 12, further comprising: multiple other transmission mechanisms which are provided in parallel with the transmission mechanism; and multiple other angle detectors; wherein: the multi-turn absolute rotation angle is calculated based on multiple angle detected values detected by the angle detector and the multiple other angle detectors.
 19. The device according to claim 18, wherein: the first rotating shaft of the transmission mechanism and first rotating shafts of the multiple other transmission mechanisms are a same rotating shaft.
 20. A method for calculating a multi-turn absolute rotation angle calculated value θ₁(m^(nmax−1))′ of a first rotating shaft in a multi-turn absolute rotation angle detection device, the multi-turn absolute rotation angle detection device including (i) a transmission mechanism adapted to transmit revolution from the first rotating shaft of first to nmax-th rotating shafts down to the nmax-th rotating shaft of the first to nmax-th rotating shafts and (ii) an angle detector adapted to detect an angle detected value p₁ to an angle detected value p_(nmax) within one revolution of the first rotating shaft to the nmax-th rotating shaft, wherein a rotation angle θ_(n) of an n-th rotating shaft of the first to nmax-th rotating shafts satisfies a relationship with a rotation angle θ₁ of the first rotating shaft as follows: ${\theta_{n} = {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1}}},$ where (a) nmax and m are integers not less than 3, and (b) n falls within a range 1≦n≦nmax, the method comprising: detecting the angle detected value p₁ to the angle detected value p_(nmax) within one revolution of the first rotating shaft to the nmax-th rotating shaft by the angle detector; and determining a coefficient R₀ to a coefficient R_(nmax−2), where determining the coefficient R₀ to the coefficient R_(nmax−2) comprises sequentially determining the coefficient R₀ to the coefficient R_(nmax−2) by repeating, for n=2 to nmax: (1) determining a coefficient R_(n−2) from a rotation angle corrected value p_(n)′ of the n-th rotating shaft, the coefficient R_(n−2) being determined such that the angle corrected value p_(n)′ obtained by an angle corrected value calculation formula as follows: $p_{n}^{\prime} = {{mod}\left( {{\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \left( {p_{1} + {\sum\limits_{i = 2}^{n}{\left( {R_{i - 2} \times m^{i - 2}} \right) \times u}}} \right)},u} \right)}$ most closely approximates an angle detected value p_(n) of the n-th rotating shaft; and (2) substituting the coefficients R₀ to R_(nmax−2) determined into a rotation angle calculation formula as follows: ${\theta_{1{(m^{{n\mspace{14mu}{ma}\; x} - 1})}^{\prime}} = {p_{1} + {\sum\limits_{i = 2}^{nmax}{\left( {R_{i - 2} \times m^{i - 2}} \right) \times u}}}},$ to obtain the multi-turn absolute rotation angle calculated value θ₁(m^(nmax−1)) of the first rotating shaft; wherein: the coefficients R₀ to R_(nmax−2) are integers ranging from 0 to m−1 inclusive; u is a base unit quantity; and an angle corrected value p₁′ is the angle detected value p₁ of the first rotating shaft.
 21. The method according to claim 20, wherein: determining the coefficient R_(n−2) comprises determining an integer which most closely approximates a result of calculating an operation as follows: ${{mod}\left( {{{\mp \left( {p_{n} - {\left( {- \frac{m \pm 1}{m}} \right)^{n - 1} \times \theta_{1{(m^{n - 2})}^{\prime}}}} \right)} \times \frac{m}{u}},m} \right)}.$
 22. The method according to claim 20, wherein: the multi-turn absolute rotation angle detection device further includes (a) multiple other transmission mechanisms which are provided in parallel with the transmission mechanism and (b) multiple other angle detectors; and the method further comprises calculating a multi-turn absolute rotation angle based on multiple angle detected values detected by the angle detector and the multiple other angle detectors.
 23. The method according to claim 22, wherein: the first rotating shaft of the transmission mechanism and first rotating shafts of the multiple other transmission mechanisms are a same rotating shaft. 